135
128
121
114
107
100
95
90
85
82
80
78
79
79
81
83
87
91
98
103
111
116
124
131
139
146
154
161
168
174
179
184
187
189
192
192
192
190
188
185
180
175
169
163
156
148
140
133
126
120
111
106
98
93
88
84
81
79
78
78
79
81
84
89
93
99
105
112
119
126
134
141
148
156
163
169
175
180
184
187
190
191
192
190
189
186
183
178
173
167
161
153
146
138
131
124
116
110
103
97
91
87
84
80
79
79
79
80
83
86
90
96
101
108
115
122
129
136
143
151
158
166
171
177
182
186
188
190
192
192
190
188
185
182
176
171
165
158
151
143
135
127
121
114
107
100
94
90
85
82
81
78
79
79
82
83
88
92
97
103
110
117
124
131
138
147
153
161
167
173
179
182
187
189
192
191
192
190
188
185
180
175
169
163
156
148
141
133
125
119
111
106
98
93
88
84
81
79
78
78
79
81
84
89
92
99
104
111
119
126
133
140
148
155
162
170
175
179
184
187
190
190
192
191
189
186
183
178
173
167
161
153
146
138
131
124
117
110
103
97
92
87
84
81
79
78
79
80
82
86
89
95
101
108
114
122
128
136
143
151
157
165
171
176
181
185
188
190
192
192
190
188
185
181
176
171
165
157
151
143
135
128
121
114
108
101
95
89
86
82
80
79
78
79
80
84
87
92
97
103
110
116
124
131
138
146
153
161
167
173
179
183
187
189
191
192
192
190
187
184
181
175
169
163
156
148
141
133
126
119
112
105
99
93
89
84
81
79
78
79
79
81
83
88
92
99
105
111
118
126
132
140
148
155
162
169
174
179
184
188
189
192
192
192
188
187
183
179
173
167
161
154
146
139
131
124
117
110
104
98
92
87
84
81
79
78
79
80
82
85
90
94
101
107
114
121
128
136
143
150
158
165
171
176
181
185
188
190
191
192
190
188
186
181
176
171
165
157
151
144
136
127
121
114
107
101
94
90
85
82
80
78
79
79
81
83
88
91
97
103
110
117
124
131
139
146
154
161
167
173
178
184
187
189
192
192
192
190
188
184
180
175
169
163
156
148
140
134
126
119
111
105
98
93
88
85
81
79
78
78
79
81
84
88
92
99
105
112
119
126
133
141
148
155
163
169
175
180
184
187
190
192
192
190
190
187
184
178
173
168
161
154
147
139
131
124
118
110
104
98
92
87
83
81
79
78
79
79
82
85
90
94
101
107
114
121
127
136
143
150
157
164
170
176
181
186
188
190
192
192
191
188
186
182
177
171
165
158
151
144
136
129
122
114
108
101
95
90
86
83
80
79
78
79
81
83
87
91
97
102
109
116
124
130
138
145
153
160
167
173
178
182
187
189
192
192
192
190
188
185
181
175
170
163
156
149
141
134
126
120
112
105
99
93
88
84
81
79
78
78
79
81
84
87
92
98
104
111
118
126
132
140
147
155
162
169
174
180
184
188
190
192
192
192
190
188
185
179
174
168
162
154
147
140
132
125
118
111
104
97
92
87
84
81
79
78
79
80
82
85
90
94
100
106
113
121
127
135
143
150
157
164
171
176
181
185
188
190
192
192
191
189
186
182
177
172
166
158
152
144
135
129
122
115
108
101
96
89
87
82
79
79
78
78
80
83
87
91
97
103
109
116
124
131
137
145
154
159
168
173
179
182
186
190
192
192
192
190
188
185
181
176
169
164
156
149
141
134
127
119
112
105
99
92
88
84
80
79
78
78
79
80
83
88
93
98
104
111
119
125
133
140
148
154
163
168
175
180
184
188
190
192
192
192
190
187
184
179
174
168
161
154
146
140
131
125
118
111
103
97
92
87
82
81
78
78
78
80
81
85
89
94
100
107
113
120
127
135
142
149
157
164
171
175
181
185
188
191
192
192
190
188
186
183
177
172
165
159
152
144
136
129
122
114
108
102
95
90
86
83
79
79
78
79
80
83
87
91
97
103
109
116
123
130
137
146
154
159
167
173
179
182
186
189
191
192
192
190
188
184
181
175
170
164
156
149
141
133
127
119
112
105
98
93
88
84
80
79
77
78
78
80
83
87
93
98
104
111
118
126
133
140
148
155
163
169
175
180
184
189
190
192
192
192
190
187
184
179
174
168
162
154
147
139
132
124
117
110
103
98
91
87
83
80
78
77
78
79
82
84
89
94
100
107
113
121
127
135
143
151
158
165
170
177
181
185
188
191
192
192
192
188
187
182
177
172
166
159
152
144
137
129
122
115
108
101
95
90
86
82
79
78
79
78
80
83
87
91
97
102
109
116
124
130
138
145
153
161
167
173
178
183
187
189
192
192
192
190
188
185
180
176
169
164
156
149
141
133
127
119
111
105
99
93
88
84
80
79
79
77
79
80
83
87
93
98
104
111
119
126
133
141
148
156
163
169
175
181
184
188
190
192
192
192
190
188
184
179
174
168
162
155
147
140
132
125
117
110
103
97
91
87
83
80
79
77
78
79
82
85
89
94
100
107
113
121
128
135
143
150
158
165
170
176
181
185
189
190
192
192
192
189
186
182
177
172
165
160
152
144
136
129
122
115
108
102
95
90
85
82
80
78
78
78
80
82
86
91
96
103
109
116
123
130
138
145
153
160
167
173
178
183
187
189
192
192
192
190
188
185
181
176
170
164
156
149
142
134
127
119
112
105
99
93
88
84
80
79
78
77
79
80
83
87
92
98
104
111
118
126
132
140
148
155
162
169
175
180
184
188
190
192
192
192
190
188
184
180
174
169
162
155
147
139
132
125
118
110
103
97
91
87
83
80
79
77
78
79
81
84
89
94
99
106
113
120
127
135
143
150
157
165
171
176
181
186
189
190
192
192
192
189
186
183
178
172
166
160
152
144
137
129
123
115
108
101
95
90
85
82
80
78
78
78
80
83
86
91
96
102
109
116
123
130
137
145
153
161
167
173
178
183
186
189
192
192
192
191
188
186
180
176
169
163
156
149
142
134
127
120
112
105
99
93
89
83
82
78
78
77
79
80
83
87
92
98
105
111
119
126
133
140
148
155
162
169
175
180
185
188
190
192
192
192
189
187
184
179
174
168
161
154
147
139
131
125
117
110
103
97
91
86
83
80
78
77
78
79
81
84
89
93
100
106
114
120
127
135
142
150
157
165
171
176
181
186
189
191
192
192
191
189
186
182
177
171
166
158
151
144
136
129
122
115
108
101
95
90
86
83
79
77
77
78
80
82
87
91
97
102
109
116
123
130
137
145
153
160
167
173
179
183
187
189
192
192
192
190
188
185
180
175
170
163
156
149
141
134
126
119
111
105
98
93
88
84
80
79
77
78
78
81
83
87
93
98
104
111
118
126
133
141
147
156
163
170
175
180
185
188
190
192
192
192
190
187
185
179
175
167
162
154
147
139
131
125
117
110
103
97
91
87
83
80
78
77
78
79
81
84
89
94
99
106
113
121
127
135
142
150
157
164
171
176
182
185
189
190
192
192
191
189
187
182
178
172
166
159
152
144
136
129
122
115
108
101
95
90
86
82
80
79
78
78
80
83
86
90
96
102
108
116
123
131
137
146
153
159
167
173
178
183
187
189
191
192
192
190
187
185
181
175
170
164
156
149
141
134
127
119
112
104
99
93
89
84
81
79
78
78
79
80
84
88
92
98
105
111
119
126
133
140
148
155
163
169
175
181
185
189
190
192
192
192
190
188
184
179
174
168
161
154
146
139
131
124
117
110
103
97
91
86
83
80
78
78
78
79
82
84
89
94
100
107
113
121
127
135
143
150
158
164
171
176
182
186
188
192
192
192
192
189
187
183
178
172
166
159
152
144
136
129
122
115
108
101
95
91
85
83
79
79
78
79
80
83
86
91
97
102
109
116
124
130
138
145
153
160
167
173
178
183
187
189
192
192
192
190
188
185
180
175
170
164
156
148
141
134
127
119
111
105
99
93
87
84
80
79
78
77
79
80
84
88
93
98
105
111
118
126
133
140
148
155
163
169
175
180
184
188
190
192
192
192
190
187
184
179
174
168
162
154
146
139
131
124
117
110
102
97
91
86
83
80
78
77
79
79
82
85
89
94
100
107
113
121
127
135
141
151
157
166
170
177
181
185
189
191
192
192
192
189
186
182
178
173
165
159
153
144
136
128
123
114
108
101
95
89
85
82
80
77
78
77
81
82
86
91
95
102
108
116
123
131
137
145
153
160
166
173
178
183
186
189
192
192
192
190
188
185
181
176
169
164
156
149
142
134
127
119
112
105
99
93
88
84
81
78
78
77
79
80
83
88
92
99
105
112
119
126
133
140
148
155
163
169
175
180
184
188
190
192
192
192
190
188
184
180
173
168
161
155
146
138
131
124
117
110
102
97
91
86
83
80
79
77
78
79
81
85
89
94
100
107
113
120
128
135
143
150
158
164
171
176
181
185
188
191
192
192
192
189
186
183
177
172
165
159
152
144
136
128
122
115
108
101
94
90
85
82
79
78
78
78
80
82
86
91
96
102
108
116
123
130
138
145
152
159
166
172
178
182
187
189
191
191
192
190
188
184
181
176
169
163
156
148
141
133
127
119
112
105
98
93
88
84
81
79
78
78
79
81
83
88
92
99
105
111
119
126
133
140
148
156
162
169
175
180
184
188
190
192
192
192
189
187
184
179
174
168
161
154
146
138
132
124
117
110
103
97
91
87
83
79
78
77
78
79
81
85
89
94
100
106
114
120
128
135
143
151
158
165
171
177
181
186
188
191
192
192
192
189
186
183
177
172
166
159
152
144
137
129
122
115
107
102
95
90
86
82
80
78
78
78
80
82
86
91
96
102
109
116
124
130
137
145
152
160
166
173
178
182
187
189
192
192
192
190
188
184
180
175
169
163
156
149
141
134
127
120
112
106
99
93
88
84
81
79
78
78
79
81
84
88
92
98
105
111
119
126
133
141
148
156
162
170
174
180
184
187
190
192
192
192
189
187
184
179
174
168
162
154
147
139
131
125
117
110
103
97
91
87
83
80
79
77
78
79
81
85
89
94
100
106
114
121
127
135
143
150
157
165
171
177
181
185
188
190
192
192
192
189
186
182
178
173
166
159
152
144
137
129
122
115
107
102
95
91
86
82
80
78
79
78
80
82
86
91
96
102
109
115
123
130
137
145
152
160
166
173
177
183
187
189
192
192
192
190
188
185
180
176
169
164
156
149
142
134
127
120
113
106
99
93
89
84
82
79
78
78
79
81
84
88
93
99
105
111
119
126
132
140
148
156
163
169
175
180
184
188
190
192
192
192
189
188
183
179
174
168
161
154
147
139
131
124
117
110
103
97
92
86
84
80
79
78
78
80
82
85
89
94
101
106
114
120
127
135
143
150
157
164
171
176
181
185
189
191
192
192
192
189
186
183
177
172
165
160
152
144
136
129
122
115
108
101
95
90
85
82
80
79
78
79
80
82
86
91
97
101
109
115
123
130
137
145
152
159
166
172
178
182
186
189
191
192
191
191
187
185
180
175
170
163
157
149
142
134
127
120
112
106
99
94
89
85
81
79
79
79
79
81
84
88
92
98
105
111
118
126
133
140
148
155
162
169
175
179
184
187
190
192
192
192
189
187
184
179
174
167
162
153
147
138
132
125
117
111
104
97
91
86
83
81
79
78
78
80
81
85
89
94
100
106
113
120
127
135
143
150
157
165
171
176
181
185
189
191
192
192
190
190
186
182
178
172
166
159
153
144
137
129
121
115
109
101
95
90
86
82
80
78
78
78
80
83
86
90
96
102
109
115
123
130
137
145
152
160
166
172
177
182
186
189
190
192
192
190
187
185
181
175
169
163
157
149
141
134
127
120
112
106
99
94
89
84
82
79
79
78
79
81
84
88
93
98
105
111
119
125
132
140
147
155
162
168
175
179
184
187
190
192
192
192
189
187
183
179
174
167
161
154
147
139
131
125
117
110
103
97
91
87
83
81
79
78
78
80
82
85
89
94
100
107
113
120
127
135
142
150
157
164
171
176
181
185
189
190
192
192
192
189
187
183
177
172
166
159
152
144
136
129
122
115
108
102
96
90
86
83
80
79
78
79
80
83
86
91
96
102
108
115
123
130
137
145
152
159
166
172
178
182
186
189
192
192
191
190
188
185
180
175
170
163
157
149
142
134
127
120
113
106
99
93
89
85
82
79
79
79
79
81
84
88
92
98
104
111
118
125
132
140
147
155
162
169
174
180
184
187
189
192
192
192
189
187
184
179
174
168
162
154
147
139
132
125
117
110
104
97
92
87
84
80
79
78
78
80
81
85
89
94
100
106
113
120
127
134
143
150
156
164
169
176
181
186
188
191
192
192
190
189
186
183
177
173
166
159
152
144
137
129
123
116
108
102
96
90
86
82
80
79
78
78
80
83
86
91
96
101
108
115
123
129
137
145
152
159
166
172
177
182
186
188
190
192
192
190
187
185
181
176
170
163
157
149
142
134
127
120
112
106
100
94
89
84
82
79
78
79
79
81
84
88
92
98
105
111
118
125
133
139
147
155
161
168
173
179
184
187
190
191
192
191
189
187
183
179
173
167
161
154
147
139
132
124
117
111
103
98
92
87
83
81
78
78
78
79
82
85
89
94
99
106
112
120
127
134
142
150
156
164
171
176
181
185
188
189
192
192
192
188
186
182
178
172
166
159
152
144
136
129
123
116
107
102
96
91
86
82
80
78
78
79
80
83
85
91
96
101
108
115
122
129
136
144
151
159
165
172
177
182
186
188
190
190
191
189
188
184
181
175
170
163
157
149
142
134
127
120
113
106
100
94
90
85
83
79
79
78
79
81
84
88
93
98
104
111
118
125
132
139
147
155
162
169
173
180
184
187
189
192
192
191
189
187
184
179
174
168
161
154
147
139
132
125
117
111
104
97
92
87
84
81
79
78
78
80
82
85
89
94
100
106
114
120
127
134
142
150
156
164
170
176
181
185
189
190
192
192
191
189
186
182
177
173
166
160
153
145
137
130
122
116
108
102
96
91
86
82
80
78
78
78
80
83
86
91
96
102
108
115
122
129
137
144
152
160
166
172
177
182
187
188
192
191
192
190
188
185
180
176
170
164
156
150
142
135
127
120
113
107
100
94
89
85
83
80
79
78
79
82
84
88
92
98
104
111
118
125
132
140
147
155
161
168
175
179
184
187
190
190
192
191
189
186
183
179
174
169
162
154
147
139
132
125
118
111
103
98
92
88
84
80
79
78
79
80
82
85
89
95
99
106
113
120
127
135
142
149
157
164
171
176
181
185
188
190
192
192
192
189
186
182
177
173
166
159
152
144
137
130
123
116
108
102
96
90
87
82
80
78
78
79
80
83
86
91
95
102
108
115
122
129
137
144
152
159
165
172
178
182
186
189
190
192
192
190
187
185
180
176
170
164
157
150
143
134
127
120
114
106
100
93
90
85
83
80
79
78
79
81
84
88
92
98
104
110
118
125
133
140
147
154
161
168
174
179
183
187
189
191
191
192
189
187
183
180
173
168
161
154
147
139
132
125
118
110
104
98
92
87
84
81
79
78
78
79
81
85
89
94
99
106
113
120
127
134
142
149
157
163
171
176
181
185
188
190
192
192
191
189
186
183
177
172
166
160
153
145
137
129
123
116
108
102
95
91
86
82
80
78
78
79
79
83
85
90
95
102
108
114
122
128
137
144
152
159
165
172
177
182
186
188
190
191
192
190
188
184
180
176
170
164
157
149
143
134
127
120
114
106
100
94
89
85
82
80
79
79
79
81
82
88
91
98
103
111
118
125
132
139
147
154
161
168
173
179
183
188
189
190
192
192
189
186
184
180
174
167
162
154
148
139
132
124
118
111
104
99
92
87
84
81
79
78
78
80
81
84
89
94
100
106
113
120
128
134
142
149
156
165
170
176
180
185
188
190
192
192
190
189
186
183
177
172
166
160
152
145
138
130
123
115
108
102
95
91
86
82
80
78
78
78
80
82
86
90
96
101
108
114
123
128
136
144
151
159
165
171
177
181
185
188
190
190
192
190
188
184
181
176
170
164
157
150
143
135
127
121
113
107
100
95
90
85
82
80
78
79
79
81
84
87
92
98
104
111
117
125
132
139
146
154
161
168
173
179
183
187
189
190
192
190
189
186
184
179
174
168
162
155
147
140
132
125
118
111
104
98
92
88
84
81
79
78
78
79
81
85
89
94
99
107
112
120
127
134
142
149
156
164
170
176
181
184
188
190
192
192
191
189
186
183
177
173
166
160
152
145
138
130
123
116
109
102
96
90
87
83
80
78
78
78
80
82
86
90
95
101
108
115
122
129
136
144
152
158
166
171
177
182
185
188
190
192
191
190
188
185
181
176
170
165
157
150
143
135
127
121
114
107
100
94
89
85
82
80
79
79
79
81
84
88
92
98
104
111
117
125
132
139
147
153
161
167
173
178
183
187
189
190
192
191
189
187
184
179
174
169
162
155
147
140
132
125
118
111
105
98
92
87
83
81
79
78
78
79
81
84
89
94
99
106
112
120
127
134
141
149
157
163
170
175
180
185
188
190
192
192
191
189
187
183
178
173
167
160
152
145
138
129
124
115
110
102
96
91
86
83
80
79
78
78
80
82
86
91
95
102
107
115
122
129
136
144
152
159
166
172
177
182
185
189
190
191
192
190
188
184
180
176
170
164
157
150
143
134
127
120
114
106
100
94
89
85
82
80
79
78
79
81
84
88
93
98
104
110
118
125
132
139
147
154
161
167
173
179
183
187
189
191
192
191
189
187
183
179
173
168
161
155
146
140
132
125
118
111
104
98
92
88
83
81
79
78
78
79
82
84
89
94
99
106
113
119
127
134
142
149
157
163
170
175
180
184
187
190
192
192
190
188
186
182
178
172
166
160
153
145
137
130
124
115
109
102
96
91
86
83
80
79
78
78
80
82
85
90
95
101
107
115
122
128
136
144
152
159
165
172
176
182
185
188
190
191
192
190
188
185
181
176
170
164
157
150
143
134
127
120
114
106
100
94
90
85
82
80
79
78
80
81
84
87
92
97
104
110
117
125
132
139
147
154
161
168
173
179
183
187
189
191
191
190
190
187
183
179
174
168
161
155
147
139
132
125
118
111
104
98
92
87
84
82
79
77
78
79
82
84
89
93
100
106
113
120
127
134
141
149
156
163
170
175
181
185
188
190
192
192
191
189
187
182
178
172
166
160
153
146
138
130
123
116
109
102
96
91
86
82
80
79
78
79
80
82
86
89
95
101
107
115
121
129
136
144
151
158
165
171
176
182
185
188
190
192
191
190
188
185
181
176
171
165
157
150
142
135
127
121
114
107
100
94
90
85
83
79
79
78
79
80
83
87
93
97
104
110
117
125
131
139
147
153
161
167
174
178
183
186
189
191
191
191
189
187
184
179
175
168
161
155
146
140
132
125
118
111
104
98
92
88
84
81
78
79
78
79
81
84
89
93
99
106
112
120
127
134
142
149
156
163
170
175
181
184
188
190
192
192
192
189
187
182
178
173
166
161
153
145
137
130
123
116
109
102
96
91
86
83
80
79
78
79
79
82
85
90
94
101
107
115
122
129
135
144
151
158
165
171
177
181
185
188
190
191
191
190
188
185
181
176
171
164
157
150
143
135
128
120
114
106
100
94
90
85
81
80
79
78
79
82
84
87
92
98
103
111
117
125
131
139
147
154
161
168
173
178
183
188
189
192
192
192
189
187
184
179
174
168
162
155
147
140
133
125
118
111
105
97
92
88
84
81
79
78
78
79
82
84
89
93
99
106
112
120
127
134
142
149
156
163
170
176
180
185
187
190
190
192
190
189
187
183
178
173
166
160
152
145
137
130
123
116
109
102
96
91
86
83
80
78
78
78
80
82
86
90
95
101
107
114
122
128
136
143
151
158
166
171
176
182
185
189
190
192
192
190
188
185
181
176
170
165
157
151
143
135
128
121
114
107
100
94
89
85
82
80
79
79
79
81
83
87
93
98
103
110
118
124
131
139
147
153
161
168
174
178
183
187
189
191
192
190
190
186
185
179
174
169
161
155
147
140
132
126
118
111
103
98
92
88
83
81
79
78
79
79
82
84
89
93
99
106
112
119
127
134
141
149
156
163
170
175
180
185
188
190
192
192
191
188
187
183
179
172
167
160
153
145
137
130
123
116
109
102
96
91
86
83
80
78
78
78
80
82
85
90
95
101
107
115
122
129
135
143
151
158
165
171
177
182
185
188
190
191
192
189
188
184
181
176
170
165
157
151
143
135
127
120
114
107
100
94
90
86
82
80
79
79
79
81
83
87
92
97
103
111
116
125
131
139
146
154
161
167
173
178
183
187
189
192
192
191
189
187
184
179
175
168
161
155
147
140
132
126
118
111
105
98
92
87
84
81
79
78
78
79
81
84
88
93
99
105
112
119
127
134
141
149
156
163
170
175
180
184
188
190
192
192
190
189
186
183
178
173
166
161
152
146
137
130
123
116
109
102
97
90
87
83
80
79
78
78
79
81
85
89
95
101
107
114
121
128
136
143
151
157
165
171
177
182
185
188
190
192
192
190
188
185
181
176
170
164
157
150
143
135
127
121
113
107
100
94
89
85
82
80
78
78
79
81
83
87
92
97
103
110
117
125
131
138
147
153
161
167
174
178
183
186
189
191
191
191
189
187
183
179
174
168
162
155
148
140
132
125
118
111
104
98
92
88
83
81
78
79
77
79
81
84
88
93
99
105
112
119
126
134
141
149
156
163
169
174
179
184
187
190
192
192
191
188
186
183
178
172
167
159
153
145
137
130
123
116
109
102
97
90
86
83
80
79
78
78
80
82
85
90
95
100
107
114
122
128
135
144
150
158
165
171
177
181
185
188
190
192
191
190
188
185
181
175
171
164
157
150
143
135
127
120
114
106
100
94
90
85
82
79
79
78
79
80
84
87
92
97
103
110
116
125
131
139
146
154
161
168
173
179
183
187
189
191
192
192
189
187
183
180
174
168
162
155
147
140
132
126
117
110
104
98
93
88
83
81
78
78
78
79
81
83
89
93
99
105
112
119
127
134
141
149
156
163
170
175
181
185
188
190
192
192
191
190
187
183
178
172
166
160
153
146
137
131
123
117
109
102
96
91
86
82
80
79
78
78
80
82
86
90
95
101
107
114
121
128
136
143
151
157
166
171
177
181
186
188
190
192
192
190
188
184
181
176
170
165
157
150
142
135
127
120
113
106
100
94
89
85
82
80
78
78
79
81
84
87
92
98
103
110
117
125
132
138
147
153
161
167
174
179
183
187
189
192
192
191
190
188
184
179
174
169
162
155
147
140
132
125
118
111
104
98
92
88
83
81
78
78
78
79
81
84
88
93
98
106
111
120
126
133
141
149
156
163
170
175
180
185
188
190
192
192
192
189
187
183
179
173
166
160
153
145
138
130
124
115
110
102
97
90
86
83
80
78
78
78
80
82
85
90
94
101
107
114
121
128
136
143
151
158
165
171
176
182
185
189
190
192
191
190
188
185
181
176
171
165
157
150
143
135
128
120
113
106
100
94
89
85
82
79
79
78
79
80
83
87
92
97
103
110
117
124
131
138
147
153
161
167
174
179
183
187
189
192
192
192
189
188
184
180
175
169
162
155
147
140
132
126
118
111
104
98
92
87
82
81
78
77
78
79
80
84
88
93
99
105
111
118
127
133
141
148
156
163
169
175
181
184
188
190
192
192
192
189
187
183
178
173
167
160
153
146
138
130
123
116
108
103
96
91
86
82
80
79
78
78
79
82
85
90
94
101
108
114
121
128
136
144
151
159
165
171
176
181
186
188
191
192
192
190
188
185
182
176
171
164
157
150
143
135
127
121
113
107
100
94
89
84
82
79
78
78
78
80
82
87
91
97
103
110
117
125
131
139
146
154
161
168
174
179
184
186
190
191
192
191
189
188
184
180
175
169
162
155
148
140
133
125
118
111
104
98
92
87
83
80
78
77
77
79
80
84
88
93
98
105
111
119
126
134
140
149
156
164
169
175
180
185
188
190
192
192
192
189
186
184
179
173
167
161
153
146
138
130
123
117
109
102
96
91
86
83
80
78
78
78
80
82
85
90
95
101
107
114
121
127
136
143
151
158
165
171
176
182
185
188
190
192
192
190
188
187
182
177
171
164
157
151
143
135
127
121
113
107
100
95
89
85
81
79
78
77
78
80
83
87
91
97
103
110
117
124
131
138
146
153
161
167
173
179
184
186
190
191
192
192
190
188
184
181
175
169
163
156
148
141
133
126
118
111
104
98
92
87
83
81
78
77
77
78
80
84
87
93
98
105
111
119
126
133
140
148
156
163
169
175
180
184
188
190
192
192
192
190
187
184
179
174
167
161
154
146
139
130
124
116
110
102
96
91
87
82
80
78
77
78
79
82
85
90
94
101
107
114
121
127
136
143
150
158
165
171
176
182
186
189
190
192
192
191
188
186
181
177
171
165
158
150
144
135
128
121
114
107
100
94
89
84
81
79
78
77
78
80
82
86
91
96
103
109
117
124
131
138
146
153
161
168
173
179
183
187
190
192
192
192
190
188
185
180
175
170
163
155
148
141
133
126
118
111
104
98
92
87
83
80
78
77
77
79
80
83
87
92
98
104
111
118
126
133
141
148
155
163
169
175
180
184
188
190
192
192
192
189
187
184
179
173
167
161
154
146
138
131
123
117
109
103
96
91
86
83
80
78
78
78
79
82
84
89
94
100
107
113
121
128
135
143
150
157
165
171
177
181
186
188
191
192
192
191
188
185
182
176
171
165
158
151
143
136
127
121
114
107
100
93
89
85
81
79
77
78
77
79
82
86
91
96
102
110
115
124
131
138
145
154
161
168
174
178
184
186
189
192
192
192
190
187
185
180
176
169
163
156
148
141
133
126
118
111
104
98
92
87
83
80
78
78
77
79
80
83
87
92
98
105
111
119
126
133
140
148
155
163
170
175
180
184
188
190
192
192
192
190
187
184
179
173
167
161
154
146
138
131
124
117
109
102
97
91
87
82
80
78
77
77
79
81
85
89
94
100
107
113
121
127
135
143
150
158
165
171
177
181
186
189
190
192
192
191
188
186
182
177
171
166
158
152
144
136
128
121
114
108
101
94
89
85
81
79
77
77
78
80
82
86
91
96
102
109
116
122
130
138
146
153
159
167
173
179
183
187
190
192
192
192
192
188
185
181
177
170
164
156
149
141
134
127
119
112
105
99
93
87
84
80
78
77
77
78
80
83
87
92
97
104
111
118
125
133
140
147
155
162
169
174
180
184
188
189
192
192
192
189
187
184
179
174
168
161
154
146
139
131
124
117
110
103
97
91
86
83
80
78
77
78
78
82
84
89
94
100
106
114
120
128
135
143
150
158
165
171
177
181
185
189
190
192
191
191
188
186
182
176
172
165
158
151
144
136
128
121
114
107
101
94
90
85
81
79
78
78
77
79
82
86
91
96
102
109
115
123
130
138
145
153
160
167
173
178
183
187
189
192
192
192
190
188
185
180
176
169
164
157
149
141
134
126
119
112
105
98
93
88
84
80
78
77
78
78
80
83
88
91
98
104
111
118
126
132
140
147
155
162
169
174
180
184
188
189
191
192
191
189
186
184
179
173
168
161
154
147
139
132
124
117
110
103
98
92
87
83
80
79
77
78
79
82
84
89
94
100
106
113
121
127
135
143
150
157
165
170
176
181
185
188
190
192
192
191
189
186
183
176
172
165
159
151
144
136
129
121
115
108
101
94
90
85
81
79
77
78
77
79
82
86
90
95
101
109
116
123
129
138
145
153
159
167
173
178
182
187
189
192
192
192
190
188
185
181
176
170
164
156
150
142
134
127
120
112
106
99
93
88
84
81
79
78
77
78
80
83
88
91
98
103
110
118
125
132
139
147
155
162
168
174
180
184
187
190
190
192
191
189
187
183
179
173
168
161
154
147
139
131
125
117
110
103
97
91
87
83
80
79
78
78
79
81
85
89
94
99
107
113
120
127
135
142
150
157
165
171
176
181
185
189
190
192
191
191
188
186
182
177
172
166
159
152
144
137
128
122
114
108
101
95
89
86
81
79
78
77
78
79
82
86
90
96
102
108
115
123
129
137
145
152
159
166
173
178
182
186
189
191
192
192
191
187
185
181
175
170
164
157
149
143
134
127
120
113
105
99
93
89
84
82
79
78
78
79
81
83
88
92
98
104
110
118
125
132
139
147
154
162
168
174
179
184
187
189
190
192
192
189
187
183
180
174
168
160
154
147
139
131
125
117
110
103
97
92
87
83
81
79
77
78
80
82
84
89
94
100
106
113
120
127
134
142
149
157
164
171
175
181
185
188
190
192
192
190
189
186
182
177
172
166
159
152
144
137
129
122
115
108
102
94
90
85
82
79
78
78
79
79
82
86
90
95
101
109
115
123
129
137
144
152
159
166
172
178
182
187
189
191
192
192
190
188
185
181
175
170
163
157
149
142
134
127
120
112
106
99
93
89
84
81
79
78
78
78
81
83
87
92
98
104
110
117
125
132
140
147
155
161
168
173
179
183
187
189
191
192
191
189
187
183
178
174
167
161
154
146
139
131
124
117
110
103
97
92
86
83
80
79
78
78
79
82
84
89
94
100
106
113
120
127
135
142
150
157
164
170
176
181
185
188
190
191
192
190
189
185
182
177
172
166
158
152
144
136
129
122
115
108
101
95
90
85
82
79
78
78
78
80
82
86
90
97
101
109
116
123
130
137
145
152
159
166
172
178
182
186
188
190
192
192
190
188
184
181
175
170
163
157
149
141
134
127
120
112
106
100
93
89
85
81
80
78
79
79
81
84
88
93
98
104
111
118
126
132
140
147
155
162
168
174
179
183
187
189
191
191
190
189
186
183
178
174
167
161
153
146
139
131
125
117
110
103
97
92
87
83
80
79
78
79
79
82
85
89
94
101
106
114
120
127
135
142
150
157
164
171
175
181
184
188
190
192
192
190
188
186
182
177
171
166
159
151
144
136
130
122
115
108
101
95
90
86
83
79
78
78
79
79
82
86
91
96
102
109
115
123
129
137
145
152
159
166
172
178
181
186
188
190
191
191
190
188
184
180
175
170
163
156
149
142
134
127
120
113
106
99
94
89
84
81
79
78
79
79
81
84
88
92
98
104
111
118
126
132
140
147
154
162
168
174
179
184
187
188
190
191
190
189
186
183
178
173
167
161
153
146
138
131
124
117
110
103
97
91
87
83
81
78
78
78
80
82
85
90
94
100
107
114
121
128
135
143
150
158
165
170
176
181
185
188
190
191
192
191
189
186
181
178
171
166
158
151
144
136
128
122
114
108
101
95
90
86
82
79
78
79
79
81
82
87
91
97
102
109
117
123
130
138
145
153
160
166
173
178
183
186
188
190
191
191
190
187
184
180
175
169
163
156
148
141
133
127
119
112
105
99
93
89
85
81
79
79
78
80
80
84
88
94
99
105
112
119
126
133
140
148
155
162
168
174
179
183
187
189
192
192
190
189
186
183
178
173
167
160
153
146
138
131
124
116
110
103
97
91
87
82
81
78
78
78
80
82
85
90
94
100
107
114
121
127
135
143
150
157
165
171
176
181
185
188
190
192
192
192
188
186
182
177
171
165
158
151
144
136
129
122
115
108
101
95
89
86
82
80
79
78
79
81
82
86
90
97
102
109
115
123
130
137
145
152
159
166
172
178
182
186
189
190
192
191
190
188
184
180
175
170
163
156
149
141
134
127
120
112
105
99
93
89
84
81
79
78
79
79
81
84
88
93
98
105
111
118
126
132
140
147
156
162
169
174
180
184
187
189
192
192
192
189
187
183
178
174
167
161
153
146
138
131
124
116
110
103
97
91
86
83
79
78
78
78
79
81
84
89
93
100
106
113
120
127
135
143
150
157
164
171
176
181
185
188
190
192
192
190
189
186
182
178
171
166
159
152
144
136
129
122
116
107
101
95
90
85
83
79
79
77
78
79
82
86
91
96
102
108
115
123
130
137
145
152
160
166
172
178
182
186
188
191
192
192
190
188
185
181
175
170
163
156
148
141
134
127
119
111
105
99
93
89
84
81
79
77
78
79
80
83
88
92
98
104
111
119
126
132
141
148
156
162
169
175
180
184
188
189
192
192
192
190
187
184
178
174
167
161
154
146
139
131
124
117
110
103
96
91
86
82
79
78
77
78
79
82
84
89
93
100
106
113
120
127
135
142
150
157
164
171
176
181
185
188
191
192
192
192
189
186
183
178
172
166
160
151
145
136
130
122
115
108
101
95
90
86
82
79
78
78
78
80
82
86
90
96
102
108
115
123
130
137
145
152
159
167
172
178
182
186
189
191
192
192
190
188
184
181
175
170
164
156
149
141
134
127
119
112
106
99
93
88
85
81
79
77
78
78
80
83
87
92
98
103
111
118
125
132
140
148
155
163
168
175
180
184
188
190
192
192
192
190
187
185
179
174
168
161
154
147
139
131
124
118
110
103
97
91
86
82
80
77
77
77
79
80
84
88
94
98
106
113
121
127
135
142
150
157
164
171
176
181
185
189
191
192
192
192
189
187
183
178
173
166
159
152
144
137
129
123
115
108
101
95
90
85
82
79
78
78
78
79
81
86
90
95
101
108
115
123
130
137
144
152
159
166
173
178
183
186
190
190
192
192
190
188
185
181
176
170
164
156
149
142
134
127
119
113
105
99
93
88
84
80
78
77
77
78
80
83
86
92
98
103
110
117
125
132
139
148
155
162
169
174
180
184
188
190
192
192
192
190
188
184
180
174
169
162
155
147
139
132
125
117
110
103
97
91
87
82
80
78
77
77
78
80
84
88
93
99
105
112
119
127
134
142
149
156
164
170
176
181
185
189
191
192
192
192
189
186
183
177
172
166
160
152
145
136
129
122
115
108
102
95
90
86
82
80
78
78
78
80
82
85
90
95
102
108
115
123
129
137
144
152
159
166
172
178
182
186
188
192
192
192
190
188
185
181
176
170
164
157
149
142
134
127
119
112
106
99
93
88
84
81
79
78
77
78
80
82
87
91
97
103
110
117
124
131
139
147
154
161
168
174
179
184
187
190
191
192
192
190
187
184
180
174
168
162
154
147
140
132
125
118
111
103
97
92
87
83
80
78
77
77
78
80
84
87
93
98
105
111
119
127
133
141
149
156
164
169
176
180
185
188
190
192
192
191
189
186
183
177
172
166
159
152
145
137
129
123
115
108
102
95
90
86
82
80
77
78
77
80
81
86
90
94
101
107
115
122
128
136
144
152
158
166
171
177
182
186
188
190
192
192
190
188
185
181
176
170
165
157
150
142
135
127
120
113
106
99
94
88
84
81
79
78
77
78
80
83
86
91
97
103
110
117
124
131
138
147
153
161
167
173
179
184
187
189
192
192
192
189
187
184
180
174
169
162
155
147
140
133
125
118
111
104
98
92
88
83
81
78
78
78
79
81
84
88
93
99
105
112
120
127
133
142
148
156
163
170
175
179
184
188
190
192
191
191
188
186
182
177
172
166
159
152
144
137
129
123
116
109
102
95
91
86
83
79
79
78
78
80
82
86
90
95
102
108
115
122
129
136
144
151
159
165
172
177
182
186
189
191
192
192
190
188
184
181
175
170
164
157
149
142
134
127
120
113
106
100
94
89
85
81
79
78
78
78
80
83
87
91
98
103
109
117
125
131
138
146
154
160
168
173
179
182
187
189
190
192
190
189
186
183
179
174
168
162
154
147
140
132
125
118
111
104
98
92
88
83
80
80
78
79
79
82
85
89
93
99
105
112
120
127
134
141
149
155
163
169
175
180
184
187
189
192
192
190
188
185
182
177
172
166
158
152
144
137
129
123
115
108
102
96
90
86
82
80
78
79
78
80
82
86
90
95
102
108
115
122
129
137
144
151
159
165
172
177
182
185
189
190
192
192
190
188
185
180
176
170
164
156
150
142
135
127
120
113
107
99
94
89
84
82
79
78
77
79
80
83
87
91
98
103
110
117
124
132
139
147
154
161
168
173
179
183
186
189
190
191
190
189
187
183
179
173
168
162
154
147
139
132
125
117
111
104
98
92
88
84
80
79
78
79
79
82
85
89
94
100
106
113
119
127
134
142
149
156
163
170
175
180
184
188
189
191
191
190
188
185
182
176
172
165
159
151
144
137
129
121
115
108
101
95
90
86
82
80
78
78
78
80
83
86
91
96
102
108
115
123
130
137
144
152
160
166
172
178
182
187
188
190
192
191
190
187
185
180
175
170
163
157
149
141
135
127
120
112
106
99
93
89
84
82
79
78
78
79
81
84
87
92
98
104
111
119
125
132
139
147
154
162
168
174
179
183
187
189
192
191
191
188
187
183
178
174
167
161
154
146
139
131
124
117
110
103
97
92
87
83
80
79
78
78
79
82
85
90
94
101
106
114
120
127
135
143
150
157
164
171
176
181
185
188
190
191
192
190
189
185
182
177
171
165
158
151
144
135
129
122
115
108
101
95
90
85
82
79
78
77
78
79
82
86
90
97
101
109
115
123
129
137
145
152
159
166
172
178
182
186
189
190
192
192
190
188
185
181
175
170
164
156
149
141
135
127
120
112
106
99
94
89
84
81
79
77
78
79
80
84
87
92
97
104
110
118
125
132
140
148
154
162
168
174
179
184
187
189
191
192
192
189
187
184
179
174
167
162
154
146
139
131
125
117
110
103
97
91
87
82
80
79
78
77
79
80
84
89
94
100
106
113
120
127
135
142
151
157
164
171
176
181
185
188
191
192
192
192
189
186
182
178
172
166
159
152
144
136
129
122
115
108
101
95
90
85
82
79
78
77
78
79
82
86
90
95
101
108
115
122
129
137
144
152
159
166
172
178
182
187
189
192
192
192
190
188
185
181
176
171
164
157
149
142
134
127
120
113
106
99
93
89
84
81
79
77
78
78
80
83
87
92
97
103
110
117
125
131
139
146
154
161
168
174
179
184
187
189
192
192
192
189
187
184
179
175
168
162
154
147
139
132
125
117
111
103
97
91
87
83
80
78
77
78
78
81
83
88
92
99
105
112
119
127
134
141
149
156
164
170
176
180
185
189
190
192
192
192
190
187
184
178
173
167
161
153
145
137
130
123
116
108
101
95
89
86
82
80
77
77
77
79
81
85
89
94
100
107
114
122
128
136
144
151
159
166
172
177
181
186
189
192
192
192
192
188
186
181
177
171
165
157
150
142
135
127
121
113
106
100
93
89
84
81
79
78
77
78
80
83
87
91
97
103
109
116
124
131
139
146
154
162
167
174
179
183
187
189
192
192
192
190
188
184
180
175
168
162
155
147
140
132
125
117
111
104
97
92
87
83
80
78
77
77
79
80
83
88
92
98
105
111
119
126
133
141
148
156
163
170
175
181
185
188
190
192
192
191
190
186
183
178
173
167
161
153
146
137
131
123
116
109
102
96
90
86
82
79
78
77
78
79
81
85
89
94
100
107
113
121
127
135
143
151
157
165
171
177
181
186
189
190
192
191
190
188
185
181
176
171
164
157
150
143
135
127
120
113
106
100
94
89
85
81
80
78
78
78
80
83
86
91
97
103
109
117
124
131
138
146
153
161
167
174
179
183
187
189
192
192
192
189
187
184
179
174
169
162
155
147
140
132
125
118
111
104
98
92
88
83
81
78
78
77
79
81
84
88
93
98
105
111
118
126
133
141
148
156
163
170
175
180
184
188
190
192
192
192
188
187
183
178
173
167
159
153
145
138
130
124
116
110
102
97
91
86
83
80
79
78
79
80
82
86
90
94
101
107
114
121
129
135
144
151
158
165
170
177
181
185
188
190
191
191
189
188
185
181
176
171
164
158
150
142
135
127
120
114
106
100
94
89
85
81
79
78
78
79
80
83
87
92
97
103
110
117
125
131
139
146
154
160
167
173
179
182
187
189
191
192
191
190
187
184
179
174
169
161
155
147
140
133
125
118
111
104
98
92
88
84
81
79
78
78
79
81
83
89
92
99
105
111
119
127
133
141
148
156
162
169
174
180
184
187
189
191
192
190
189
186
182
178
172
166
160
153
146
138
130
123
116
109
102
96
91
87
83
80
79
78
79
80
82
86
90
95
101
107
115
122
129
136
143
152
158
165
171
176
182
185
188
190
191
192
190
188
184
181
176
170
164
156
150
142
134
127
120
113
107
99
94
89
84
82
79
78
78
79
80
83
87
92
98
103
110
117
124
131
139
146
153
161
168
173
179
183
186
189
190
192
191
189
187
184
179
174
168
161
155
147
140
133
125
118
111
105
98
93
87
84
80
79
78
79
79
81
84
88
94
99
106
112
120
127
134
142
150
156
163
170
176
180
184
188
189
190
192
190
189
185
182
177
172
166
159
151
144
136
129
122
115
108
102
96
91
87
82
80
78
78
78
80
82
86
90
96
102
109
115
123
129
137
144
152
159
166
171
177
182
186
188
190
192
191
190
187
185
180
175
170
163
157
149
142
134
127
120
112
106
99
93
89
84
82
79
78
78
78
81
83
87
91
97
103
110
117
125
131
139
147
154
161
168
174
178
184
187
189
191
192
192
190
187
183
179
174
168
162
154
147
140
132
125
118
111
104
98
92
87
83
80
79
78
78
79
80
84
88
94
99
105
112
119
127
134
141
149
156
164
170
175
181
185
188
190
192
192
190
189
186
183
177
172
166
159
152
144
137
129
122
115
108
101
96
89
86
82
79
78
77
78
79
82
85
90
95
101
107
115
122
129
136
144
152
159
166
172
178
182
186
189
191
192
192
192
188
186
181
176
171
164
157
150
142
135
127
120
113
106
99
93
89
84
81
79
78
77
78
80
81
87
91
97
102
109
116
124
131
138
146
154
161
167
174
178
184
187
190
192
192
192
189
188
184
181
175
169
162
155
148
140
132
126
118
111
104
98
92
87
83
81
78
78
77
79
81
83
88
93
99
105
112
119
127
134
141
149
157
163
170
175
181
185
188
190
192
192
192
189
187
183
178
173
166
160
152
145
137
130
123
115
108
101
95
90
85
82
79
78
77
77
79
81
85
89
95
100
107
114
121
128
136
143
152
158
166
172
177
182
186
189
192
192
192
191
189
185
182
177
171
165
158
151
143
135
127
120
113
106
99
94
89
84
81
79
77
77
78
79
82
86
90
96
102
110
116
124
130
138
146
153
161
167
173
179
182
187
189
192
192
192
190
187
185
180
175
169
163
155
148
140
133
126
118
111
105
98
92
88
83
81
79
77
78
78
81
83
88
93
99
105
111
119
126
133
141
148
155
163
169
175
180
184
187
190
192
192
192
189
187
183
179
174
167
161
153
146
138
130
123
116
109
102
96
91
86
82
80
78
78
78
80
81
85
89
95
100
107
114
121
127
136
143
150
158
165
172
176
181
185
189
191
192
192
191
188
186
182
177
171
165
158
151
143
136
128
121
114
107
100
95
89
85
82
79
78
78
79
80
82
87
91
97
102
109
116
123
130
137
145
153
160
167
173
178
182
186
189
190
192
190
189
187
184
180
174
168
162
155
148
140
133
126
118
112
104
98
92
88
84
81
79
78
79
79
81
84
88
93
99
105
112
118
126
134
141
148
155
163
169
175
180
184
187
189
192
192
191
188
186
183
178
173
167
160
154
145
138
130
124
116
109
103
97
91
87
83
81
78
78
78
80
82
85
90
94
100
106
114
121
127
135
143
150
157
164
170
175
181
184
188
190
191
192
190
188
184
181
177
170
165
157
151
143
136
128
122
114
108
101
96
90
86
82
80
79
78
79
80
84
87
92
97
103
109
116
123
131
137
146
153
160
167
173
178
182
186
188
190
192
190
189
187
184
180
174
169
162
156
147
140
132
126
118
111
104
99
92
88
84
81
79
78
78
79
81
84
89
93
99
105
112
119
127
133
141
148
155
163
169
175
179
184
188
190
192
192
191
189
186
183
177
173
166
160
152
145
137
130
123
116
108
102
96
91
87
83
80
79
78
78
79
82
85
90
94
101
108
114
122
127
135
144
151
158
165
171
177
180
186
188
190
191
192
190
188
185
181
176
170
164
157
150
142
135
127
121
113
107
100
94
90
84
82
79
78
78
79
81
83
87
92
98
103
110
117
125
131
139
147
154
161
167
174
178
184
186
189
191
192
191
189
187
184
179
174
168
162
155
147
139
132
125
117
111
104
97
92
87
83
80
78
78
77
79
80
84
88
94
99
105
112
119
126
134
141
149
156
163
170
175
181
184
188
190
192
192
191
189
186
183
178
173
167
159
153
145
137
130
123
116
109
102
97
90
86
82
80
78
78
78
79
82
85
90
94
101
107
114
121
128
135
144
151
159
165
171
178
181
186
188
191
192
192
190
188
185
181
176
171
164
157
150
142
135
127
120
113
106
100
93
89
84
81
79
77
78
78
80
82
87
91
97
103
110
116
124
130
139
146
154
161
167
174
178
184
187
190
192
192
192
190
188
185
180
175
169
163
155
148
140
133
126
118
110
105
97
92
87
83
80
78
77
77
79
80
83
87
92
98
105
111
119
126
133
140
148
156
163
169
175
180
185
188
190
192
192
191
190
187
184
178
173
167
161
153
145
138
130
124
116
110
102
97
90
86
83
79
78
77
78
79
82
85
89
94
100
107
114
121
128
135
144
151
157
165
171
177
181
186
189
191
192
192
191
188
186
182
177
172
165
158
151
144
135
128
121
114
106
100
94
89
84
81
79
77
77
77
79
82
86
90
95
102
109
115
123
130
138
145
153
161
167
173
178
183
187
189
192
192
192
190
188
186
180
175
170
163
157
150
141
134
125
119
112
105
99
92
88
84
81
79
77
77
78
80
83
87
92
97
104
110
119
125
132
140
147
155
162
169
174
179
184
187
190
191
192
192
189
187
183
179
173
167
161
154
146
139
130
125
116
110
102
97
91
86
82
79
78
78
78
79
81
85
89
94
100
106
113
121
128
135
143
150
157
164
171
176
182
185
188
190
192
192
190
188
186
182
176
171
165
158
151
144
136
129
121
114
107
101
94
90
85
82
79
78
77
79
80
83
86
91
96
101
109
116
123
130
137
145
152
159
166
171
178
181
186
188
190
192
190
189
187
184
180
175
169
163
156
148
141
134
126
120
112
105
99
93
89
85
82
80
78
79
79
81
85
88
93
99
105
111
119
126
133
140
147
154
163
168
174
178
184
186
189
190
191
190
188
186
182
177
173
167
160
153
145
138
130
124
116
110
103
97
91
87
83
81
79
78
78
80
82
86
90
95
101
107
114
122
128
135
143
151
157
164
171
176
181
184
188
189
191
191
190
188
185
181
176
171
165
158
150
144
135
128
121
114
107
100
94
89
85
82
79
79
78
79
80
83
87
91
97
103
109
116
124
130
138
145
153
159
167
172
178
182
186
189
190
192
190
189
187
184
179
174
169
162
155
148
140
132
126
119
111
105
99
92
88
84
81
79
78
79
79
82
84
89
94
99
106
112
120
127
133
141
149
155
163
169
175
179
184
187
190
191
192
191
188
186
182
177
172
166
160
152
145
137
130
123
116
109
102
96
90
86
82
80
78
78
78
80
82
85
90
95
101
107
115
121
128
136
144
151
158
165
172
177
182
186
189
190
192
192
190
188
185
182
177
171
165
158
150
143
135
128
121
113
106
100
94
89
85
82
79
78
77
79
80
83
86
91
97
102
109
116
124
130
138
146
153
160
167
173
179
182
187
189
192
192
191
189
188
184
180
174
169
162
156
147
140
133
125
118
111
105
98
92
88
83
80
78
77
78
78
81
83
88
92
98
105
111
119
126
133
141
149
156
163
170
175
180
185
188
190
192
192
192
189
187
184
178
174
167
161
153
146
137
130
124
116
109
102
96
90
86
82
79
78
77
77
79
80
84
88
94
100
106
113
121
127
135
143
151
157
165
171
177
182
186
189
191
192
192
192
189
186
182
177
172
166
158
151
143
136
128
122
114
107
101
94
89
85
82
79
78
77
78
80
82
85
91
96
103
110
116
123
129
137
146
152
161
166
173
178
184
187
189
191
192
192
190
188
185
180
176
170
163
156
148
141
133
126
119
111
105
98
92
88
83
81
79
77
77
78
80
83
87
92
98
104
111
118
126
132
139
147
155
163
169
174
180
184
187
190
192
192
192
190
188
184
179
174
167
162
154
147
139
132
125
117
110
103
97
91
86
84
80
78
77
78
79
81
84
88
94
99
106
113
120
127
135
141
150
157
164
170
176
181
184
189
190
192
192
190
189
186
182
177
171
166
158
152
144
136
128
121
114
108
100
95
89
85
82
80
78
78
79
80
83
86
91
97
102
109
116
123
130
137
145
152
160
167
172
178
182
186
189
190
192
191
190
187
185
180
175
169
163
156
148
140
133
126
119
112
105
99
93
88
84
81
79
78
78
79
81
84
88
93
99
105
111
118
126
132
140
148
155
162
169
174
179
183
187
189
191
190
191
188
186
182
178
173
168
160
153
146
138
131
124
117
110
103
97
92
87
83
80
79
78
78
80
82
86
90
94
101
107
114
120
128
135
143
150
157
164
170
175
181
184
187
189
190
190
189
188
184
181
176
170
165
157
150
143
135
128
121
114
107
101
95
90
85
82
79
78
78
79
80
83
86
92
97
103
109
116
123
130
138
145
152
160
166
172
178
182
186
188
190
191
190
189
187
184
179
175
169
162
156
148
141
133
126
118
111
105
98
93
88
83
81
79
78
78
79
81
84
89
93
99
105
111
119
126
133
140
148
155
162
169
174
179
184
187
189
191
191
190
188
186
182
178
172
167
160
153
145
137
130
123
116
109
102
97
91
86
83
80
79
78
79
80
82
85
90
95
100
107
115
121
129
136
144
150
158
165
172
176
181
185
188
190
192
191
190
188
185
181
176
171
164
158
150
143
135
127
121
114
106
100
93
89
84
81
79
78
77
78
79
83
86
91
96
103
109
116
123
130
138
145
153
160
167
172
178
183
186
189
192
192
192
189
188
185
180
175
169
163
156
149
141
133
126
119
112
104
98
92
88
83
81
79
78
77
79
80
83
87
92
98
104
111
118
126
132
140
147
155
162
169
175
179
184
188
189
192
192
192
190
187
184
179
173
167
161
154
146
138
130
124
116
109
103
96
91
86
82
80
78
77
77
79
81
84
89
93
100
106
113
120
127
135
142
150
158
164
172
176
182
186
188
192
192
192
191
190
186
182
177
172
166
160
151
144
137
129
122
114
108
101
95
89
85
81
78
77
76
77
79
82
86
90
95
101
108
115
123
129
137
144
153
159
167
173
179
182
186
189
191
192
192
190
188
185
181
175
170
164
156
149
142
134
127
119
112
105
99
93
88
84
80
79
78
78
78
80
83
87
91
98
104
110
117
125
132
140
147
154
162
168
174
179
184
188
189
192
192
192
189
187
184
179
174
167
162
154
147
139
131
125
117
110
103
97
91
87
83
80
78
77
77
79
81
84
88
93
99
106
112
120
127
134
141
149
156
163
170
176
180
185
187
190
191
192
191
189
186
182
178
171
166
159
152
144
137
129
122
115
108
101
95
90
86
82
79
78
78
78
80
82
87
90
96
102
108
115
122
129
136
144
151
159
165
172
177
182
185
189
189
191
191
189
188
184
180
175
169
163
156
149
141
134
127
120
112
106
99
93
89
84
81
79
78
78
80
80
85
88
93
98
105
111
118
126
133
139
147
154
162
168
174
180
184
187
190
191
192
190
189
186
183
179
173
167
161
154
146
139
131
125
117
111
103
97
91
87
83
81
79
78
79
80
82
85
90
94
100
106
113
121
127
135
142
150
157
164
171
176
181
184
188
189
191
190
190
188
185
181
177
171
165
157
150
144
136
129
121
115
108
101
95
90
86
82
80
79
79
79
80
83
87
91
97
103
109
116
123
130
137
145
152
160
166
172
178
182
186
188
190
191
190
189
187
184
179
174
169
162
155
148
140
133
126
118
112
104
99
92
89
83
81
78
78
78
79
81
84
88
93
98
104
111
118
126
133
140
148
156
162
169
174
179
184
187
189
191
191
191
189
187
182
178
173
167
160
153
145
138
130
124
116
110
102
97
91
86
83
80
79
78
78
79
81
85
89
94
100
107
113
120
127
135
143
150
157
165
171
176
181
185
189
190
192
191
191
188
186
182
176
171
165
158
151
143
135
127
121
113
106
100
94
89
84
82
79
77
77
77
79
82
86
91
95
102
109
116
123
130
138
145
153
160
167
173
179
183
187
189
192
192
192
190
188
185
180
176
170
163
156
149
141
133
126
118
112
104
98
92
87
83
80
78
77
77
78
80
82
88
91
99
103
111
117
125
132
140
147
155
163
169
174
180
184
188
190
192
192
192
189
187
184
179
173
168
161
154
146
138
131
124
117
109
103
96
91
86
82
80
79
77
77
79
80
84
88
94
99
106
112
121
127
134
143
149
158
165
170
176
181
185
188
192
192
192
190
189
186
183
177
172
166
159
151
144
136
128
122
114
107
101
94
89
84
82
79
78
78
77
79
81
86
90
95
101
108
114
123
128
137
144
153
158
166
172
178
182
186
189
190
192
192
190
188
185
181
176
170
164
157
150
142
134
127
119
113
105
99
93
88
85
80
79
77
78
78
80
82
87
91
97
103
110
117
125
131
138
146
153
161
167
173
179
183
187
189
191
191
191
189
186
184
178
174
168
161
154
146
139
132
124
118
110
104
97
92
87
83
80
78
78
78
79
81
84
89
93
99
106
112
119
127
133
142
149
156
163
170
175
180
185
187
190
190
192
189
189
185
182
177
172
166
159
152
144
137
130
122
115
108
102
96
90
86
82
80
78
77
79
80
82
86
90
96
101
108
115
123
129
136
144
151
159
166
171
177
181
185
188
190
191
190
190
187
184
180
175
169
163
156
149
142
134
127
120
112
106
99
94
89
85
82
80
78
79
79
81
84
88
92
98
105
111
118
125
133
140
147
154
162
168
174
179
184
187
189
190
191
190
188
186
182
178
173
167
161
153
146
138
131
124
117
110
103
97
92
87
83
80
79
78
78
80
81
85
89
94
100
106
114
120
127
135
143
150
157
164
170
176
181
185
188
190
192
191
190
188
186
181
177
171
165
158
151
143
136
128
121
114
107
101
95
90
85
82
80
78
78
79
80
83
86
91
96
102
109
116
123
130
137
145
152
160
166
173
178
182
186
189
190
192
191
190
187
185
180
175
169
162
156
148
141
133
126
119
111
104
98
92
88
83
81
78
78
78
79
81
84
87
93
98
105
111
119
126
133
140
148
155
163
169
174
180
184
188
190
192
192
192
189
187
183
179
173
167
161
153
146
138
131
124
116
109
102
97
91
86
82
80
78
77
78
79
81
84
89
93
100
105
113
120
127
134
142
150
157
164
171
176
182
185
188
190
191
192
190
189
186
182
178
172
166
158
152
144
136
129
122
115
107
101
94
90
85
82
79
77
77
78
79
82
85
90
95
101
109
114
122
129
138
144
152
159
166
173
178
182
187
189
192
192
192
190
188
185
181
176
170
164
157
149
142
134
127
120
112
106
98
93
88
83
81
78
77
77
78
80
82
87
91
97
103
110
117
124
132
139
146
154
161
168
174
180
183
188
190
192
192
192
190
188
185
180
175
169
162
154
148
139
133
125
118
110
103
98
92
87
83
80
79
77
78
78
80
83
88
93
99
105
111
119
126
133
141
148
155
163
169
175
179
185
188
189
191
191
191
189
186
182
177
172
166
160
152
145
137
129
123
115
108
102
96
90
86
82
80
78
78
77
80
82
86
90
95
101
107
115
122
128
136
144
152
159
165
172
177
182
185
188
190
190
192
189
188
184
180
176
169
164
156
150
142
135
127
120
113
106
99
94
89
85
82
79
79
78
80
80
84
87
92
97
103
110
117
125
131
139
147
153
161
167
173
179
182
186
189
190
192
190
189
186
183
179
173
168
161
154
146
139
132
125
118
111
104
98
92
88
84
81
80
79
79
80
82
86
89
94
100
107
113
120
127
134
142
149
157
164
170
175
180
184
188
189
191
190
190
187
185
181
177
171
165
158
151
144
136
128
123
115
108
101
95
90
86
82
80
78
78
79
80
83
86
91
96
102
107
116
123
130
137
144
152
159
166
172
178
182
185
189
190
192
191
190
187
185
180
175
170
163
156
149
142
134
127
120
112
105
99
93
89
84
81
79
78
78
79
81
84
88
92
98
104
111
118
126
132
140
148
155
162
168
174
180
183
188
189
192
191
192
189
186
183
178
173
167
161
153
146
138
131
124
116
109
103
96
91
86
82
80
78
77
78
79
82
84
89
94
100
107
113
121
127
135
143
150
158
164
171
176
181
185
189
192
192
192
192
189
187
182
177
172
165
159
151
144
136
128
121
114
107
100
95
89
85
81
78
77
77
78
79
82
86
90
95
101
108
115
122
129
137
144
152
159
167
172
178
182
187
189
192
192
192
190
188
185
181
176
170
164
157
149
142
134
127
119
112
105
99
93
88
84
80
79
77
78
78
80
83
88
92
98
103
111
117
125
132
139
147
154
162
168
174
179
184
187
190
192
192
192
190
188
184
179
174
167
162
154
147
139
131
125
118
110
104
97
91
87
83
80
78
77
77
79
81
84
88
93
98
105
112
119
127
133
141
148
155
163
169
175
180
185
188
190
191
192
190
190
186
183
178
173
167
160
153
145
137
130
123
115
108
102
96
90
86
83
80
78
78
78
79
82
85
89
95
100
107
114
122
128
136
144
151
158
165
171
177
181
185
188
190
191
190
190
188
185
180
176
171
164
157
150
142
135
127
121
113
106
99
94
89
85
82
79
78
78
79
81
83
88
91
97
103
110
118
124
131
139
146
154
161
168
173
177
183
187
189
190
191
191
189
187
184
178
174
168
162
154
148
139
132
126
118
111
103
98
92
87
84
81
79
79
78
80
82
85
89
94
99
106
112
120
127
134
141
149
156
163
169
175
180
184
187
189
191
192
189
188
185
181
176
171
166
158
152
144
137
129
122
115
108
102
96
91
86
83
80
79
79
79
80
83
86
91
96
102
109
115
123
129
137
144
152
159
165
172
177
181
185
189
190
191
190
189
187
184
180
175
169
163
156
149
141
134
127
120
112
106
99
94
88
85
81
79
78
78
79
81
83
88
92
98
104
111
118
125
132
139
147
154
162
168
174
179
183
187
189
191
192
190
189
186
184
179
173
167
161
154
146
139
131
124
117
110
103
97
91
87
82
81
78
78
78
79
81
84
89
94
99
106
112
120
127
134
142
150
156
164
170
176
181
185
188
190
192
190
192
188
186
181
177
172
166
158
151
144
136
128
122
114
107
100
94
89
85
81
79
77
77
77
79
81
85
89
95
101
108
115
122
129
137
144
152
159
166
173
178
183
186
189
191
192
192
190
188
185
181
176
170
164
157
150
142
134
127
120
112
105
99
93
88
83
80
78
77
76
78
79
82
86
91
97
102
110
117
125
131
139
147
155
161
168
173
179
183
187
189
192
192
192
190
188
184
179
174
169
161
155
146
140
132
125
117
111
104
97
91
87
83
80
78
77
78
79
81
84
89
93
99
105
112
120
126
134
141
149
156
164
169
175
181
184
188
190
192
192
191
189
187
182
178
172
166
160
153
145
137
130
123
115
109
102
96
90
86
82
79
77
77
78
79
82
85
89
94
100
107
114
121
128
135
143
151
158
165
171
177
181
185
187
190
191
191
189
188
184
181
175
171
164
157
150
143
135
127
120
114
106
100
94
90
85
82
79
78
79
79
81
83
88
92
97
103
110
117
124
131
139
146
154
161
167
173
178
182
186
188
190
190
190
188
186
182
179
174
168
161
154
147
139
131
125
118
111
104
97
92
87
84
81
79
78
78
79
81
85
88
93
100
105
112
120
127
134
141
149
156
163
170
175
180
184
187
189
191
192
189
188
185
182
177
171
166
158
151
144
137
129
122
115
108
101
96
90
86
82
80
78
78
79
79
83
85
91
95
102
108
115
122
129
137
144
152
158
166
171
177
181
186
188
190
191
191
189
187
184
180
175
169
163
156
149
142
133
127
120
112
106
98
93
89
84
81
79
77
78
79
80
83
87
92
98
103
111
117
125
132
140
148
154
161
168
173
179
184
187
189
192
192
191
190
187
184
179
173
169
162
155
146
139
132
125
118
110
104
97
91
86
83
80
77
77
78
78
80
83
88
93
99
105
112
119
126
134
141
148
156
164
170
176
180
185
188
190
192
192
190
189
186
183
178
173
166
160
152
145
137
129
123
115
108
101
96
90
85
82
79
78
77
77
79
81
85
89
94
101
107
114
122
128
137
144
152
158
166
171
177
182
186
189
191
192
192
191
188
185
182
177
171
165
157
150
142
135
127
120
113
106
100
94
88
84
81
79
77
77
78
79
82
85
91
96
102
109
116
124
131
138
146
153
161
167
174
179
183
187
189
192
192
192
190
187
185
180
175
169
163
156
148
141
133
126
119
111
104
98
92
88
83
81
78
78
78
79
81
84
88
93
98
105
111
118
126
133
141
148
155
163
169
175
180
184
188
190
192
192
192
188
187
183
179
173
167
160
153
145
137
130
124
116
109
102
97
91
87
83
80
78
78
79
80
82
86
90
95
101
107
114
121
129
135
144
151
158
165
171
176
181
185
188
190
192
191
190
188
185
181
175
171
164
158
150
143
135
127
121
114
107
100
94
90
85
82
80
79
78
79
81
84
86
92
97
104
110
117
124
131
139
146
153
161
167
174
179
182
186
188
190
191
190
188
186
183
179
174
168
161
155
147
140
131
125
118
111
104
98
92
88
84
82
79
79
78
80
82
85
90
94
100
106
113
120
127
134
141
149
156
163
170
175
181
184
188
189
192
192
190
188
186
181
177
171
166
158
151
144
136
129
122
115
108
101
96
90
86
82
79
79
78
79
80
82
86
91
95
102
107
115
121
129
136
145
151
159
166
171
178
182
186
189
190
192
192
190
188
185
181
176
170
164
156
150
142
134
127
120
113
106
99
93
89
84
81
79
78
78
79
80
83
87
91
97
103
110
117
125
131
139
146
154
162
168
174
179
184
187
189
192
192
192
189
188
184
180
174
168
162
154
147
139
131
124
117
110
103
96
91
86
82
80
77
76
77
78
80
83
88
92
99
105
112
119
126
133
141
148
156
163
171
175
181
185
188
191
192
192
192
189
186
183
178
173
166
161
152
146
137
130
123
115
108
101
95
90
85
82
78
78
76
77
78
81
84
89
94
100
106
114
120
128
135
143
151
158
165
170
176
181
186
188
190
192
192
190
188
186
182
176
171
165
158
150
143
135
127
120
114
106
100
93
88
84
81
79
77
77
78
79
82
87
91
97
103
110
116
124
130
138
145
153
161
167
173
179
182
187
189
192
192
192
189
188
184
180
175
169
162
156
148
140
133
126
119
111
105
98
92
88
83
81
79
78
78
79
82
84
89
93
99
105
111
119
127
133
141
147
156
162
169
175
179
184
187
189
190
191
190
188
186
182
177
173
166
160
153
145
138
130
123
116
109
103
96
92
87
83
81
80
78
79
80
83
85
91
96
102
108
115
122
128
137
144
150
158
165
171
176
181
185
187
190
190
190
189
187
184
180
175
170
163
157
149
142
134
127
120
113
106
99
94
89
85
82
79
79
79
79
81
83
88
92
98
104
111
117
125
132
139
146
154
161
168
173
179
183
187
189
191
192
192
189
187
183
180
174
168
162
154
148
139
132
125
118
111
104
98
92
87
83
80
79
77
79
79
81
83
89
93
100
105
113
119
127
134
141
149
156
164
169
176
181
185
188
190
192
192
190
189
186
183
177
172
166
159
152
144
136
129
122
116
107
102
94
89
85
81
79
78
77
78
79
81
86
90
95
100
108
114
122
128
137
144
152
159
166
172
178
182
187
189
192
192
192
192
189
186
182
177
171
164
158
150
142
135
127
120
113
106
99
93
88
84
81
79
77
77
77
80
82
86
90
97
103
109
116
124
130
139
145
153
161
168
173
179
184
187
189
192
192
192
190
188
185
180
175
168
163
155
148
140
132
126
118
111
104
98
92
87
83
80
78
77
77
79
80
83
88
93
98
105
111
119
125
134
140
148
155
163
169
175
180
184
187
190
192
192
190
189
187
183
178
173
167
161
153
146
137
131
123
117
109
102
97
90
87
82
80
78
78
78
79
81
85
89
94
100
106
114
121
128
135
142
150
157
164
170
176
180
185
188
190
192
191
190
188
185
181
176
171
165
158
152
143
136
128
121
114
107
101
95
90
86
82
80
78
78
79
80
83
87
91
97
103
109
116
124
130
138
146
152
160
166
172
177
182
186
189
190
191
190
190
186
184
179
174
169
162
155
147
141
132
126
119
111
105
98
93
88
84
81
79
79
78
79
81
85
88
93
99
106
111
119
126
134
140
148
155
163
169
175
180
184
187
190
191
192
190
189
186
182
178
172
166
160
152
145
137
130
123
115
109
102
97
90
86
82
80
78
78
78
80
82
86
90
95
101
107
115
121
128
136
143
151
158
166
171
177
181
185
189
190
192
191
190
188
185
181
175
170
164
156
150
142
135
127
120
112
106
99
94
89
84
81
79
77
78
78
80
83
87
92
98
103
110
117
125
131
139
147
154
162
168
175
179
184
187
190
192
192
192
190
187
184
180
175
169
162
155
147
140
132
125
118
110
104
97
92
87
83
80
77
77
77
79
80
84
87
93
98
105
111
119
126
133
141
148
156
163
170
176
180
185
187
190
192
192
192
189
187
183
178
173
167
161
153
145
138
129
124
115
109
102
96
90
86
82
79
77
77
77
79
82
85
89
94
100
107
114
121
128
136
143
151
158
165
171
176
182
185
189
189
192
192
192
188
186
182
177
171
165
158
151
143
135
128
121
114
107
101
94
89
85
81
79
78
77
78
79
82
86
90
96
102
108
115
123
130
137
145
152
160
166
172
178
182
186
188
191
192
192
190
187
184
180
175
170
163
156
148
141
134
127
119
111
105
99
92
89
84
81
78
78
78
79
81
84
88
93
98
104
111
118
126
132
140
147
155
161
168
174
179
183
186
189
190
190
190
188
185
182
177
172
166
160
153
145
138
130
123
116
109
103
96
91
86
83
80
78
78
78
80
82
85
90
94
101
107
114
121
128
136
143
151
158
164
171
176
181
185
188
190
190
190
189
187
184
181
175
170
164
157
150
143
135
127
120
114
107
100
94
89
85
82
79
78
78
79
80
83
87
91
97
103
110
117
125
131
138
146
153
161
167
173
179
182
187
188
190
191
190
189
187
183
179
174
168
161
154
147
140
131
125
118
111
104
97
92
87
83
81
79
77
78
78
81
84
89
93
99
106
113
120
127
134
142
149
156
163
170
175
180
185
188
190
192
192
192
189
186
183
178
172
166
160
152
145
136
129
122
115
108
101
95
90
85
82
79
77
77
77
79
81
85
89
94
100
107
114
121
128
136
143
152
158
165
171
177
182
186
189
190
192
192
190
189
185
182
176
171
164
157
150
143
135
127
120
114
107
100
94
89
85
81
79
77
78
77
79
82
86
91
96
102
109
116
124
130
138
145
153
160
167
173
179
183
187
189
191
192
192
190
187
184
180
175
169
163
156
148
141
133
126
119
111
105
98
92
87
84
80
79
77
77
78
80
83
87
92
98
103
110
118
125
132
139
147
154
162
168
174
180
184
187
189
190
192
191
189
186
183
178
173
168
160
153
146
139
132
124
117
111
103
98
92
88
83
81
79
79
78
80
81
85
89
95
100
106
113
120
127
134
143
149
157
164
170
176
180
184
188
189
191
190
190
187
185
181
176
171
165
158
151
143
136
127
123
114
107
101
94
90
85
82
80
78
78
79
80
83
86
91
97
103
109
116
124
130
138
145
153
161
166
172
177
183
186
189
190
192
191
189
187
184
180
175
169
162
156
148
140
132
126
118
112
105
98
93
88
84
81
79
78
78
80
80
85
89
94
99
105
112
119
126
133
141
148
155
163
169
175
181
184
188
189
191
192
190
188
186
182
177
171
166
159
153
145
137
129
123
115
108
101
96
90
86
82
80
78
77
79
79
82
85
90
95
101
108
114
122
129
136
144
151
159
166
172
177
182
186
188
190
192
191
191
188
185
182
176
171
164
157
150
142
134
127
120
112
105
99
92
89
83
81
78
77
77
77
80
82
85
90
96
103
109
116
123
130
138
145
153
161
167
173
178
183
187
189
192
192
192
189
188
184
180
175
169
163
155
148
140
133
126
118
111
104
98
92
87
83
80
78
78
77
78
80
84
87
92
98
104
111
118
126
132
140
147
155
162
169
174
180
184
188
189
192
192
192
189
187
184
179
173
167
161
154
146
138
131
124
117
109
103
96
91
86
82
80
79
77
78
79
81
84
89
94
100
106
112
121
127
135
142
150
157
164
170
175
181
184
187
190
192
192
190
188
186
182
176
172
165
159
150
145
136
129
122
115
107
101
96
90
86
82
80
79
78
79
81
83
87
91
96
103
109
116
123
130
137
144
152
159
166
172
178
181
186
188
190
190
190
189
187
184
179
174
168
162
155
148
140
133
126
119
112
104
98
93
88
84
80
79
78
79
79
81
84
88
93
99
105
112
119
126
133
140
148
155
163
168
175
179
184
187
189
190
192
190
188
186
183
177
172
167
160
153
145
138
130
124
116
109
103
96
91
86
82
80
78
78
78
80
82
85
89
95
101
107
114
122
127
136
143
151
158
165
171
176
181
185
188
191
191
192
190
188
185
181
176
170
165
157
150
142
134
127
120
113
106
99
93
88
85
81
79
78
77
78
80
82
86
91
97
103
110
116
124
131
138
146
154
161
168
174
179
184
188
190
191
192
192
190
187
185
181
175
169
163
155
148
140
133
125
118
111
104
97
92
87
83
80
78
76
77
78
80
83
87
92
97
104
111
119
126
133
140
148
156
163
168
176
180
185
188
191
191
192
192
190
187
183
178
174
167
161
154
145
138
130
124
116
110
102
96
91
86
82
80
78
77
77
79
81
85
89
94
100
106
113
120
127
135
142
151
156
165
170
176
181
185
188
190
191
192
191
188
186
182
177
170
166
157
152
143
136
128
121
114
107
101
94
89
85
82
79
78
78
78
80
83
86
90
96
102
109
116
123
130
137
145
152
159
166
172
177
182
186
188
190
191
190
189
187
184
179
175
169
163
156
148
141
134
126
120
112
105
99
93
89
84
82
79
79
79
80
81
85
88
93
98
105
111
119
126
133
140
147
155
161
168
174
179
183
187
189
190
191
190
188
186
182
178
173
166
160
153
145
138
130
124
116
110
102
97
91
87
83
80
79
78
79
80
82
85
89
94
101
107
114
121
128
134
143
150
158
164
170
176
181
185
188
190
192
190
190
188
185
181
176
171
165
157
151
143
135
128
121
114
107
100
94
89
85
82
80
78
78
79
80
83
86
91
96
103
109
117
123
131
137
146
153
161
167
173
178
183
186
189
191
192
192
189
187
184
180
175
169
163
155
148
140
132
126
118
111
104
97
92
87
83
80
77
77
76
79
79
83
87
91
98
104
111
118
126
132
140
148
155
162
169
174
180
184
188
189
192
192
192
189
187
184
179
173
168
161
154
146
139
130
124
116
109
102
96
89
86
82
79
77
76
77
78
80
84
88
93
99
106
113
120
127
134
142
149
157
164
171
176
181
185
188
190
192
191
191
188
186
182
176
172
165
158
151
143
136
128
122
114
107
101
94
90
85
81
79
77
77
78
79
82
86
91
95
102
108
115
122
129
137
144
152
160
166
172
177
182
186
188
190
192
191
189
187
185
180
175
169
163
156
148
141
133
127
119
112
105
99
93
89
84
81
79
78
78
79
80
84
87
92
98
104
110
118
125
132
139
147
154
162
168
174
178
183
186
188
190
190
190
188
186
181
178
172
167
159
153
145
138
130
124
116
110
103
97
91
87
83
81
79
78
78
80
82
86
90
95
101
107
114
121
128
135
143
150
158
164
170
176
181
184
188
189
192
190
189
187
184
181
175
170
164
157
150
142
135
127
121
113
106
100
94
90
85
82
79
78
77
79
80
83
86
91
96
103
109
116
124
130
138
145
153
161
167
173
178
183
186
189
192
192
191
190
187
184
180
175
169
161
156
147
142
132
126
118
112
104
98
93
88
84
80
79
77
78
78
81
83
88
92
98
104
111
119
126
133
140
147
155
162
170
174
179
184
187
189
192
192
192
188
187
183
179
173
167
161
153
146
138
131
123
116
109
102
97
91
86
82
79
78
77
77
78
81
84
88
93
99
105
113
120
127
134
142
150
157
164
170
176
181
186
189
191
192
192
191
189
186
183
177
172
166
159
152
144
137
129
122
116
108
102
94
90
85
82
79
78
78
78
80
82
86
90
95
101
108
114
122
129
137
144
152
159
166
172
177
182
185
189
190
191
192
189
188
184
181
176
169
163
156
149
142
134
127
119
112
106
99
94
88
84
81
79
78
78
79
81
83
87
92
98
103
111
117
125
132
139
147
155
161
168
173
179
183
187
188
190
192
190
189
186
184
178
173
167
161
153
146
138
131
124
117
110
103
97
91
87
83
80
78
77
78
79
82
85
89
94
100
107
113
121
127
135
142
150
156
164
170
176
180
185
188
190
190
191
190
188
185
180
176
171
164
158
150
143
135
127
121
113
107
100
94
90
85
82
79
78
78
78
81
82
87
90
97
103
110
116
124
131
138
146
153
160
167
173
179
183
187
189
191
192
192
189
187
184
181
175
169
163
155
148
140
133
125
119
111
105
98
92
87
83
80
78
77
77
79
80
83
87
93
98
103
111
118
125
132
140
148
155
163
168
175
180
184
188
190
192
192
190
190
187
183
179
173
168
161
154
146
139
131
123
116
109
103
96
91
87
82
80
77
77
78
79
81
84
89
94
99
107
112
121
127
135
143
149
157
164
171
175
181
185
188
190
192
191
191
188
186
182
177
172
165
158
152
144
136
129
122
114
108
100
95
89
85
82
79
78
77
78
80
82
86
90
102
102
108
115
122
129
137
144
152
159
166
172
177
182
185
189
190
192
191
190
188
185
180
175
170
163
157
149
142
135
127
120
113
106
100
93
89
85
82
80
79
79
79
81
84
88
92
98
104
111
118
125
132
140
147
154
162
167
173
178
183
187
188
191
190
190
188
186
182
178
173
167
161
154
146
138
130
124
117
110
103
97
92
87
83
80
79
78
78
79
82
86
90
94
100
107
114
121
127
135
142
150
157
164
171
176
180
185
187
190
190
192
190
188
185
181
176
170
165
158
151
143
135
129
121
114
107
100
95
89
85
82
79
78
77
79
80
82
87
91
97
102
109
116
123
130
138
145
153
159
167
172
179
183
186
189
191
192
191
189
188
184
180
174
170
162
155
148
140
133
126
119
111
104
98
92
87
83
79
78
77
78
78
80
82
87
92
98
104
111
118
126
132
141
147
156
162
169
174
180
185
188
190
192
192
192
190
188
184
179
175
167
162
154
147
139
131
124
117
110
103
97
91
86
82
79
77
76
77
79
80
84
88
93
99
105
112
119
127
134
142
149
156
164
170
176
181
185
188
191
192
192
191
189
186
183
177
172
167
159
152
144
137
129
122
115
108
102
95
90
85
82
79
78
78
78
80
82
86
90
95
101
108
115
123
129
138
144
152
159
166
172
177
182
185
189
190
192
192
190
188
184
180
176
170
164
157
149
142
134
127
120
112
106
99
94
89
85
81
79
78
78
79
81
83
88
92
98
103
111
118
125
132
139
147
154
161
167
173
179
183
186
189
190
191
190
189
186
183
178
173
167
161
153
147
138
132
124
117
110
103
97
91
87
83
81
79
78
79
80
82
85
89
95
100
107
114
121
127
135
143
150
157
165
170
176
181
185
188
190
192
190
190
188
185
181
177
171
165
157
151
143
136
127
122
114
107
101
94
90
85
82
80
78
78
78
80
83
86
91
97
103
109
116
123
130
137
145
152
160
166
173
178
183
186
189
191
192
192
190
188
184
180
175
169
163
156
148
141
133
126
119
112
105
99
92
88
83
81
79
78
77
79
80
83
88
92
98
104
111
118
125
132
139
147
155
161
169
174
180
183
187
190
192
192
192
189
187
184
179
174
168
161
154
146
139
131
124
117
110
103
97
91
87
83
79
79
77
78
78
81
84
88
93
100
106
113
120
127
134
142
149
156
164
170
176
180
184
188
189
192
192
191
188
186
183
177
173
166
159
152
145
137
130
122
116
108
102
96
91
86
82
81
79
78
79
80
82
86
90
96
102
108
115
123
129
137
144
151
159
165
172
177
181
185
188
190
191
190
190
187
184
179
176
169
163
156
149
142
134
127
120
112
106
99
93
89
84
82
79
78
78
79
81
83
88
92
98
104
111
118
125
132
139
147
154
161
168
174
179
183
187
190
190
192
190
190
186
183
179
173
168
161
155
147
139
132
124
118
110
103
98
92
87
83
80
79
78
78
79
81
85
89
94
100
107
113
120
127
135
142
150
157
164
170
176
181
185
188
190
192
191
192
188
186
182
177
172
165
158
152
144
136
128
121
114
107
101
94
89
85
81
79
77
78
77
80
82
86
90
96
102
108
115
123
129
138
145
152
160
167
173
179
184
187
190
192
192
192
191
189
185
181
176
170
165
156
149
141
133
127
120
112
105
99
92
88
83
80
78
77
76
78
79
82
86
91
97
103
111
117
124
132
139
147
154
162
168
174
179
184
188
190
192
192
192
190
188
184
180
173
168
162
155
147
140
132
125
117
111
103
97
91
87
83
80
79
77
78
79
81
84
88
94
99
106
112
120
127
134
142
149
157
163
171
175
181
185
188
189
192
192
190
189
186
182
177
172
165
159
152
144
136
129
122
115
108
102
95
90
85
83
80
78
78
79
80
83
86
91
95
102
108
115
123
129
137
144
152
159
166
172
177
181
185
188
190
190
191
189
187
184
179
175
169
163
156
149
142
133
127
120
112
107
99
94
89
85
81
80
78
78
79
81
84
88
92
98
105
111
118
126
133
140
147
155
162
169
173
179
184
187
189
190
192
190
189
186
183
178
172
167
161
153
146
138
131
124
117
109
103
97
91
87
83
80
78
77
78
79
81
85
89
94
99
106
113
120
127
134
142
150
157
164
170
176
180
185
188
190
192
192
191
188
186
182
177
172
166
158
152
144
137
128
122
115
108
101
95
90
85
82
80
78
78
78
80
82
86
90
95
102
108
115
123
129
137
145
152
160
166
172
177
182
186
189
190
192
192
190
187
185
181
176
170
164
157
149
142
134
127
120
112
106
99
93
89
84
81
78
78
76
78
79
83
87
91
97
103
109
117
124
131
138
147
154
161
168
173
179
183
186
189
190
192
190
189
187
183
179
174
168
162
155
148
140
133
126
118
112
104
98
92
88
84
80
79
78
78
79
81
84
88
93
99
106
112
119
127
133
141
149
155
163
169
175
179
184
187
189
190
190
190
188
184
181
177
172
165
159
152
144
136
129
122
115
108
102
95
91
86
82
80
79
78
78
80
83
86
90
96
102
108
115
123
129
136
144
152
159
165
172
177
181
185
188
190
190
192
189
188
184
180
175
169
164
156
149
142
134
127
119
112
106
99
93
88
84
81
79
78
78
78
80
83
88
91
98
103
111
117
125
132
139
147
155
161
169
174
179
184
187
190
190
192
190
189
187
183
179
173
167
161
153
146
138
131
124
117
110
103
97
91
86
83
79
78
76
77
78
81
84
88
93
99
106
112
119
127
135
142
150
157
164
170
176
181
186
189
190
192
192
191
189
186
183
177
172
166
160
152
144
137
129
122
115
109
101
95
90
85
82
79
77
77
77
79
82
85
90
94
100
107
114
122
127
136
143
152
158
166
172
177
182
185
189
191
192
192
190
188
185
181
176
170
165
157
150
143
134
127
120
113
106
99
94
89
85
81
79
78
77
79
80
83
87
91
98
102
110
116
124
132
138
146
153
161
167
173
179
183
187
189
190
192
190
190
186
184
179
174
168
162
155
147
139
132
125
118
110
104
98
92
87
83
81
79
78
78
80
81
85
88
94
99
106
112
120
127
134
141
149
156
163
169
175
180
184
187
190
190
191
190
188
185
182
176
172
165
158
151
144
136
127
122
114
108
100
96
90
86
82
80
78
78
78
80
83
86
91
96
102
108
115
123
130
137
144
153
159
167
172
178
182
186
189
191
192
192
190
187
185
180
176
169
164
156
149
141
133
127
119
112
105
98
93
88
84
80
78
77
77
78
80
83
87
91
97
103
110
117
124
132
139
147
154
162
167
174
179
184
187
190
192
192
191
190
187
184
179
174
168
162
154
147
139
132
124
117
110
103
97
91
87
83
80
78
77
78
79
80
84
88
94
99
106
112
120
127
133
142
149
156
163
170
176
180
185
188
190
192
192
191
188
186
183
177
172
166
159
152
144
137
129
123
115
108
101
95
90
85
82
80
78
78
78
80
82
86
90
95
102
108
114
122
128
137
145
151
158
165
172
177
182
186
188
189
191
191
189
187
185
180
176
170
164
157
149
143
134
127
120
113
107
100
94
89
84
82
80
79
78
79
80
84
88
92
97
104
110
118
125
132
139
147
154
161
168
173
179
182
186
189
190
191
190
189
187
183
179
173
167
161
154
146
139
131
124
117
110
103
98
91
88
83
81
79
77
78
79
82
85
89
94
100
106
112
120
127
134
142
149
156
163
169
175
180
184
188
189
192
190
190
188
186
182
176
172
166
159
151
144
137
129
122
115
108
102
95
90
85
82
79
78
78
78
80
82
86
91
95
102
108
115
122
129
137
144
151
159
165
172
177
182
186
189
190
191
192
190
188
184
181
176
170
164
157
149
142
134
127
120
113
105
99
94
89
84
81
79
78
77
78
79
83
86
91
97
103
110
116
124
131
138
145
153
161
167
173
179
183
187
189
191
192
191
189
187
184
180
174
169
162
155
147
140
133
126
118
111
105
98
92
88
83
81
79
77
78
79
81
84
88
92
99
105
111
119
126
133
141
148
155
162
168
175
180
184
187
190
190
191
190
188
185
181
178
173
165
160
151
145
137
130
123
115
108
102
95
91
87
83
80
79
78
78
80
83
85
90
95
102
108
115
122
128
136
144
152
158
166
171
177
181
186
188
190
190
191
189
188
184
180
176
170
164
157
149
142
134
127
119
113
105
99
94
89
85
81
79
78
78
78
80
83
87
91
98
103
110
117
125
132
139
147
154
162
168
173
179
183
187
189
191
192
192
189
186
184
179
173
168
161
154
146
139
132
124
118
109
104
96
91
86
82
80
78
77
78
79
81
83
89
93
99
105
112
120
127
133
142
149
157
164
170
176
180
185
188
190
192
192
192
189
186
183
178
173
166
160
152
145
137
129
122
115
108
101
95
90
85
82
79
78
77
77
79
81
85
89
95
101
108
114
121
128
136
143
151
158
166
171
177
182
186
188
190
192
192
190
188
185
182
176
171
164
158
150
143
135
128
120
114
106
101
94
89
85
82
79
78
78
78
80
83
87
92
97
103
110
117
124
131
138
146
153
161
167
173
179
183
187
189
192
191
192
189
188
184
179
174
168
161
155
147
141
131
125
118
111
104
98
92
88
84
81
79
78
78
79
81
84
89
93
100
106
112
120
127
134
142
149
156
163
170
175
181
184
188
190
190
192
190
188
186
182
178
171
166
158
152
144
135
129
122
115
107
101
95
90
85
82
79
78
77
79
79
82
86
90
96
102
108
115
122
130
137
144
152
160
166
172
178
182
187
189
192
192
192
190
189
185
181
175
171
164
157
149
142
134
127
119
112
105
99
92
88
84
80
78
77
77
78
79
82
86
91
96
103
110
117
124
131
139
146
154
161
168
174
179
184
187
189
192
192
192
189
188
184
180
175
168
162
155
147
139
132
126
117
111
103
97
92
87
83
80
78
77
77
78
81
84
88
92
99
105
112
119
127
133
141
149
156
163
170
175
180
184
188
190
192
192
190
189
186
183
178
172
166
160
152
145
137
130
123
115
108
102
95
91
86
82
79
78
78
78
79
82
85
90
95
101
108
115
121
128
136
144
151
158
165
171
177
180
186
188
190
191
191
189
188
184
180
175
170
163
157
149
142
134
127
120
112
106
100
93
90
84
82
79
79
78
79
81
83
87
92
98
103
110
117
125
132
139
146
155
161
168
173
179
183
187
189
191
192
192
189
187
183
179
173
168
161
154
146
139
131
124
117
111
103
97
91
87
83
80
79
77
77
79
81
85
89
93
99
105
112
120
127
133
141
149
156
164
170
175
180
184
188
189
192
191
190
189
186
183
177
172
166
158
152
145
137
130
123
115
107
101
96
90
86
82
80
78
77
78
79
82
85
90
94
101
108
114
122
129
136
144
150
158
165
171
177
182
186
188
190
192
192
190
188
185
181
176
170
164
157
150
143
135
127
121
114
107
100
94
89
84
82
79
78
77
79
80
83
87
91
97
103
109
117
123
131
138
145
153
160
167
173
178
182
186
189
190
192
190
189
187
184
180
174
169
162
155
148
140
133
126
118
112
104
99
93
89
84
81
79
78
79
80
81
85
88
94
99
106
112
119
126
134
141
148
155
163
169
175
180
184
188
189
190
191
190
188
186
182
177
172
166
159
153
144
137
129
123
115
108
102
96
90
87
82
80
79
78
79
80
82
86
91
96
102
107
115
122
129
136
144
151
159
165
172
176
181
186
188
190
192
191
190
187
185
180
176
171
164
157
149
143
134
127
120
113
106
100
93
89
84
82
78
78
78
79
80
83
87
92
97
103
109
117
124
131
139
146
154
161
167
174
179
183
186
189
192
192
192
189
188
184
180
174
169
162
155
148
140
132
126
118
111
104
98
92
87
83
81
79
78
77
79
80
84
88
92
99
105
112
118
126
133
141
148
155
162
169
174
180
184
188
189
192
192
191
189
186
183
178
172
167
160
153
145
138
131
124
116
109
103
97
91
87
83
80
79
77
79
79
82
85
90
94
101
107
114
122
127
135
143
151
157
164
171
176
181
185
187
190
190
190
189
187
185
181
176
171
164
158
150
143
135
128
121
114
107
101
94
90
85
82
80
79
78
79
81
83
87
92
97
103
110
117
124
131
139
146
153
160
167
173
178
183
187
189
191
191
191
189
187
183
179
174
168
162
154
148
140
133
126
118
111
104
98
93
88
84
81
79
78
78
79
81
84
89
93
99
105
112
119
127
133
141
148
156
163
169
175
180
185
188
190
191
192
190
189
186
183
178
172
167
160
153
145
137
130
123
116
108
103
95
90
86
82
80
78
78
78
79
81
85
90
95
100
107
114
121
128
136
143
151
158
165
171
177
181
186
188
192
192
192
190
189
186
182
177
171
165
158
151
143
136
127
122
113
107
100
94
90
85
82
79
78
78
78
80
82
87
91
97
102
109
116
123
130
138
145
153
159
167
173
178
183
186
189
190
192
191
190
186
184
180
175
169
163
155
148
141
133
127
119
112
104
98
93
88
85
81
79
78
79
79
81
84
87
93
99
105
111
119
127
133
140
148
155
163
168
175
179
184
187
189
192
192
190
189
186
183
177
172
167
160
153
145
138
130
123
116
109
103
96
90
87
82
81
77
78
78
79
82
85
90
95
101
107
114
121
128
135
144
151
158
165
171
177
181
186
188
191
192
192
191
188
185
181
176
171
164
157
150
143
135
127
120
113
106
99
94
89
84
81
78
78
77
78
79
82
86
91
96
103
109
116
123
130
138
146
153
161
167
173
178
183
187
190
192
192
192
190
188
185
181
175
170
163
156
148
140
133
126
118
111
104
99
92
87
83
81
79
77
77
79
80
84
87
92
98
105
111
118
125
132
140
148
155
162
169
174
180
184
188
189
192
192
192
189
187
183
178
174
167
161
153
146
138
130
124
116
110
102
96
91
87
83
80
78
78
79
79
82
85
90
94
101
107
114
121
127
136
143
151
158
165
172
176
182
185
189
190
192
192
190
188
185
181
177
171
165
158
150
143
135
128
121
114
106
101
94
89
85
82
79
78
78
79
80
83
87
91
97
103
110
117
124
131
138
146
153
161
167
173
179
183
187
189
192
192
192
190
188
184
180
174
169
162
155
147
140
133
125
118
111
105
98
92
88
84
81
78
77
78
79
81
83
88
93
99
105
112
119
127
133
142
148
156
163
170
176
180
185
188
191
192
192
192
190
187
183
178
174
167
161
153
145
138
130
123
116
108
102
95
91
85
82
79
78
77
77
79
81
85
89
94
100
107
114
121
128
136
143
151
158
166
171
177
182
186
189
190
192
192
191
189
186
182
177
171
165
158
151
143
136
128
120
114
107
100
95
88
85
81
80
77
78
78
80
83
86
91
97
102
109
116
124
131
138
146
153
160
167
173
179
182
187
189
191
192
192
190
187
184
180
175
169
163
155
148
140
133
125
119
111
105
98
93
88
83
81
79
78
78
79
81
84
89
93
99
105
111
119
126
134
141
148
156
163
170
175
179
185
187
190
191
192
191
189
186
183
178
172
166
160
152
145
137
130
123
115
109
102
96
90
86
82
79
78
77
78
80
82
85
89
95
100
107
114
122
128
136
143
152
158
166
172
178
182
186
189
191
192
192
192
189
186
182
177
172
165
158
151
144
135
127
121
113
106
99
94
88
84
81
79
77
78
77
79
82
86
90
95
102
108
116
123
130
138
146
153
161
167
174
178
183
187
190
192
192
192
190
188
186
181
175
169
163
155
148
141
133
126
119
111
105
98
92
88
83
81
78
78
78
79
80
84
88
93
98
104
111
119
126
133
140
148
155
162
169
175
180
184
187
190
192
192
191
189
187
182
178
172
167
160
153
145
138
130
124
116
109
102
95
91
86
84
79
79
77
79
80
82
85
90
95
101
107
115
121
128
135
143
150
158
165
171
176
181
185
189
190
192
192
190
188
185
182
176
171
164
158
150
143
135
128
121
113
106
100
94
89
84
81
79
77
78
79
80
83
86
91
97
103
109
116
124
131
139
146
153
161
167
173
179
184
187
189
192
192
192
190
188
185
180
175
169
163
156
148
141
132
126
118
111
104
98
91
87
83
81
78
77
77
79
80
83
88
92
98
104
111
119
126
133
140
148
156
162
170
175
180
184
188
190
192
192
192
189
187
183
178
173
167
161
152
146
137
130
123
116
109
103
96
91
86
82
79
78
77
78
79
81
84
89
94
100
107
114
121
128
135
143
151
157
165
170
176
181
185
189
190
192
192
190
189
185
182
176
171
165
158
151
143
136
128
121
113
106
100
94
89
85
81
79
77
77
79
80
83
86
91
97
102
109
116
124
130
138
145
153
160
167
173
179
182
186
189
192
192
192
189
187
184
179
175
168
162
155
147
140
132
126
118
111
105
98
92
87
84
80
79
77
78
79
81
83
89
93
99
105
111
119
126
134
141
149
156
163
170
175
181
185
188
191
192
192
192
190
187
183
178
173
166
161
152
146
137
130
123
116
108
101
96
90
86
81
79
78
77
77
79
81
85
89
94
100
107
114
121
128
136
144
152
158
166
171
177
181
186
189
190
192
192
190
188
186
182
177
171
165
158
151
143
135
127
121
113
106
100
94
89
84
81
79
77
77
78
80
82
86
91
96
102
109
116
124
130
138
145
153
161
167
173
178
183
186
189
192
192
192
190
188
184
180
175
169
163
155
148
141
133
126
119
111
105
98
93
88
83
80
79
78
77
79
80
84
88
93
98
105
111
119
126
134
140
148
155
163
169
175
180
184
188
190
190
192
190
189
186
183
178
172
167
160
152
145
137
130
124
115
109
102
96
90
86
82
80
78
77
78
79
82
85
89
95
101
108
114
122
129
136
144
151
158
166
172
178
182
186
189
191
192
192
192
189
186
182
177
171
165
158
150
143
135
128
121
113
106
100
93
89
85
81
79
76
78
78
80
82
86
90
96
103
109
116
123
130
137
146
153
161
167
174
179
184
187
190
192
192
192
190
188
184
180
176
169
164
156
149
140
133
127
119
112
105
98
92
87
84
80
78
77
78
79
80
83
87
92
97
103
110
118
126
132
140
148
155
162
168
174
180
184
188
190
192
192
190
189
186
184
178
174
167
161
153
146
138
130
124
117
110
103
97
91
86
83
80
78
78
78
79
81
85
89
94
100
107
113
121
127
136
143
151
157
165
171
176
181
186
188
191
192
192
190
188
185
181
177
171
165
158
150
143
135
127
121
114
106
100
94
89
85
81
79
78
77
78
80
82
87
90
97
102
109
117
124
131
138
146
153
161
167
174
179
183
187
190
192
192
192
190
188
185
180
175
169
163
155
148
140
133
125
119
111
104
98
92
87
83
80
78
77
77
79
80
83
87
92
97
105
111
119
126
132
140
148
155
163
169
175
179
185
188
190
191
192
192
190
186
183
179
173
167
161
153
146
139
131
124
116
110
103
97
91
86
83
80
79
77
77
79
81
84
88
94
99
106
113
121
127
135
142
150
157
164
170
176
181
185
188
191
192
192
191
189
185
182
177
171
166
158
151
144
136
128
122
114
108
101
94
90
86
81
80
77
78
78
80
82
86
91
96
102
109
115
123
129
137
145
152
159
166
173
178
182
186
189
190
191
192
190
187
184
180
176
169
163
155
149
140
133
126
119
111
105
98
93
88
83
80
78
77
77
78
81
83
87
92
98
104
111
118
126
133
140
148
156
163
169
175
180
185
188
191
192
192
192
189
187
184
179
173
167
161
154
146
138
131
124
116
109
102
97
90
86
82
80
78
77
77
79
80
85
87
93
99
106
113
121
127
135
142
150
158
165
171
176
182
185
189
191
192
192
192
189
186
182
177
171
166
158
151
143
136
128
121
114
107
100
94
89
85
81
79
78
78
78
79
82
86
91
96
102
109
116
123
130
137
146
152
160
167
173
178
183
186
189
191
192
192
190
188
184
180
175
170
163
156
148
141
133
126
119
111
104
98
92
88
84
81
79
78
77
79
80
84
87
92
98
105
111
119
126
133
140
147
155
162
169
174
180
185
188
189
192
192
192
189
187
183
178
173
167
161
153
145
138
130
124
116
109
102
97
91
86
82
80
78
77
77
79
81
84
89
94
100
106
114
120
128
135
143
151
158
165
172
177
182
186
189
192
192
192
190
189
187
182
178
171
166
158
152
144
136
127
121
114
107
101
94
89
85
81
79
78
77
78
79
82
86
90
95
101
109
115
123
130
138
145
152
160
167
173
178
183
187
189
192
192
192
191
188
185
181
176
170
163
156
149
142
133
127
120
111
105
99
93
89
83
81
78
78
77
79
80
83
87
92
98
105
111
118
126
132
140
147
155
162
169
174
180
184
187
189
192
192
191
189
187
183
179
173
168
161
154
146
139
131
124
117
110
103
97
91
86
83
79
79
77
78
79
81
85
89
94
100
106
114
121
127
135
143
151
157
165
171
176
181
185
189
191
192
192
191
189
186
182
177
172
165
158
152
144
136
128
121
115
107
100
95
90
85
81
79
77
77
78
79
82
85
90
96
102
109
115
123
130
137
145
152
160
167
172
178
183
188
189
192
192
192
190
188
185
181
176
170
163
156
149
142
134
127
120
112
105
99
93
89
83
81
78
77
77
78
80
82
87
91
98
104
110
118
125
131
139
147
154
161
169
174
179
184
187
189
192
192
192
189
187
183
179
174
168
161
154
146
139
132
124
117
110
103
97
92
86
84
80
79
77
78
79
82
85
89
94
99
106
113
120
127
135
142
150
157
164
171
176
181
185
188
190
191
192
190
189
185
182
177
171
165
158
151
144
136
128
121
115
108
101
95
90
86
82
79
78
78
78
79
83
86
90
96
101
109
115
123
130
137
145
152
160
167
172
178
182
187
188
190
192
191
190
187
185
180
175
170
163
156
148
140
134
126
120
111
106
98
93
88
84
80
79
77
78
78
81
83
87
92
97
104
110
118
125
132
139
147
155
162
168
174
179
184
187
190
192
192
192
189
187
184
178
174
167
162
153
147
139
131
125
117
111
103
97
92
87
83
81
78
78
78
80
81
85
89
94
100
105
112
120
127
135
142
150
156
164
170
176
180
185
188
190
191
192
190
188
186
181
177
171
166
158
152
144
136
129
122
115
108
101
96
90
86
82
80
79
78
78
80
82
87
90
96
102
109
115
123
130
137
144
152
160
166
172
178
182
186
188
190
192
191
190
187
184
180
175
170
163
156
149
141
134
127
120
112
105
99
93
88
84
81
79
78
78
79
81
83
88
92
98
104
111
119
125
132
140
147
155
161
169
174
179
184
187
189
191
192
192
188
187
184
179
174
167
162
153
147
139
131
124
117
110
103
97
92
87
83
80
79
78
78
79
81
85
89
94
100
106
112
120
127
135
141
150
156
164
170
175
180
185
188
190
192
192
190
188
185
183
177
172
166
158
152
145
137
130
123
116
108
102
96
91
87
83
81
79
79
79
81
83
86
91
96
102
109
115
123
129
137
144
152
159
166
172
177
181
186
188
190
190
191
190
187
184
180
175
170
164
156
148
141
134
127
120
113
106
99
94
89
85
82
79
78
78
79
81
84
88
92
98
104
111
118
125
132
140
147
155
162
169
173
179
183
186
189
190
192
190
189
186
184
179
173
167
161
154
146
138
131
125
116
111
103
97
91
87
83
80
79
77
78
80
82
85
89
94
100
107
113
121
127
135
142
150
157
165
171
176
181
185
188
190
192
191
190
188
186
182
176
172
165
158
151
144
137
129
122
115
108
102
96
90
86
82
80
78
78
78
80
83
86
91
96
102
109
115
123
129
137
145
152
159
166
172
177
181
186
189
190
190
190
189
187
184
179
176
169
163
156
149
141
134
127
120
112
106
99
94
89
84
82
79
78
78
79
81
84
88
93
99
105
111
118
126
133
140
148
155
162
169
175
179
184
187
189
190
191
190
188
186
182
178
173
167
161
153
146
138
130
124
116
109
103
97
91
87
83
79
79
78
78
79
81
85
89
94
100
107
114
121
127
135
142
151
157
165
171
177
182
185
189
190
192
192
190
189
185
183
176
171
166
158
151
144
136
128
121
115
107
101
95
89
86
82
80
78
78
79
80
82
86
91
96
102
109
115
124
129
137
145
153
159
166
172
178
182
186
189
191
192
192
190
187
185
180
175
170
163
157
149
141
134
127
119
112
105
99
93
88
84
81
79
78
78
78
81
83
88
92
98
104
111
118
126
132
140
147
155
162
169
174
179
184
187
190
191
192
191
189
187
183
179
173
167
161
153
146
138
131
124
116
109
103
97
91
86
83
79
79
77
78
79
81
85
89
94
100
107
114
121
127
135
143
151
157
165
171
177
182
186
188
191
192
192
190
189
186
183
177
172
166
158
151
144
136
128
121
114
107
100
94
89
85
81
79
77
77
78
79
82
86
90
96
101
109
115
123
129
137
145
153
160
167
173
179
182
187
189
192
192
192
190
188
185
181
176
170
163
156
149
141
134
126
120
111
105
99
93
88
84
81
79
77
78
78
80
83
87
92
97
104
110
118
125
132
140
147
155
162
168
174
179
184
187
189
192
192
191
189
187
184
178
174
167
162
154
147
138
131
125
117
110
103
97
91
87
83
80
78
77
77
79
81
85
89
93
100
106
113
120
127
135
142
150
156
164
170
176
181
185
189
192
192
192
191
189
186
182
178
172
166
158
152
144
136
128
122
115
107
101
94
89
85
81
79
77
77
77
79
81
86
90
95
101
109
114
123
130
137
144
152
160
167
173
178
183
187
189
192
192
192
191
189
185
181
176
170
164
157
149
142
134
127
120
112
106
99
93
88
84
81
79
77
77
77
80
83
87
91
98
103
110
117
125
132
139
146
154
161
168
174
180
184
187
190
192
192
191
190
187
184
179
174
168
162
154
147
139
131
125
117
110
104
97
92
87
84
80
79
78
78
79
81
84
88
93
99
106
113
120
127
134
141
149
156
164
170
176
180
184
188
190
192
192
190
189
186
183
177
172
166
159
152
144
136
129
122
115
108
102
95
90
86
82
80
78
78
78
80
82
85
90
96
101
108
114
123
129
136
144
152
159
166
172
178
182
186
188
192
191
192
190
188
185
181
176
170
164
157
149
142
134
127
120
112
106
99
93
89
84
81
79
78
78
79
80
83
88
92
98
103
110
117
125
131
139
146
154
161
168
173
179
183
187
190
191
192
191
190
187
183
180
174
168
162
155
147
139
132
125
118
111
104
98
92
87
84
80
79
78
79
79
82
85
89
94
100
106
112
120
127
134
141
149
156
163
169
175
180
184
188
189
191
192
190
189
185
182
177
172
166
159
152
144
137
130
122
115
108
102
96
91
86
83
80
79
78
79
80
82
86
91
96
102
108
115
123
129
137
144
152
158
166
171
177
181
186
188
190
190
192
189
188
184
181
176
170
164
156
149
142
134
127
120
113
106
99
93
89
85
81
79
78
78
79
81
83
88
91
98
103
111
118
125
132
139
147
154
161
168
173
179
183
187
189
190
192
191
189
187
183
179
173
168
161
154
147
139
132
124
118
110
103
97
92
87
84
80
79
77
79
80
82
85
89
94
100
106
113
120
127
134
142
149
157
164
170
176
180
185
188
190
192
192
190
188
185
182
176
172
165
158
151
144
136
128
122
115
108
102
95
90
86
82
80
79
78
79
80
83
87
91
96
103
109
116
124
130
138
145
153
159
167
172
178
182
186
189
191
191
192
190
187
184
180
175
169
163
156
149
141
133
126
119
112
105
98
93
88
84
80
79
78
78
78
81
83
88
91
99
104
110
118
126
133
139
148
155
162
169
174
180
183
188
190
191
192
191
190
187
184
179
173
167
161
153
147
139
131
124
117
110
103
97
91
86
83
80
78
77
78
79
81
84
89
94
99
106
113
120
127
135
143
150
157
164
170
177
181
185
188
189
192
192
192
188
186
182
177
172
166
159
152
144
137
129
121
115
108
101
94
90
85
82
79
78
78
78
80
82
86
90
96
101
108
114
123
129
138
144
152
159
166
172
178
183
187
189
192
192
192
190
188
185
181
176
170
164
157
149
142
133
127
120
111
106
98
93
87
84
81
78
77
77
78
80
82
87
91
97
103
110
118
125
132
139
147
155
161
169
174
180
184
187
190
192
192
192
190
188
184
180
175
169
163
154
147
139
132
125
118
110
103
97
91
87
82
79
78
77
77
78
80
84
88
93
98
105
112
119
127
134
141
149
156
164
170
176
180
185
188
191
192
192
192
189
186
183
178
173
166
160
152
145
137
129
123
115
108
101
96
90
85
82
79
78
77
78
79
82
86
90
95
101
108
114
123
129
137
144
151
159
165
172
177
182
186
188
190
192
192
190
188
185
181
176
170
164
157
149
142
134
127
120
113
107
99
94
88
84
82
79
78
78
79
80
83
87
92
97
103
110
118
124
131
138
146
154
161
168
173
179
183
187
190
191
192
191
190
187
184
180
174
168
162
154
148
140
132
125
118
111
104
98
92
88
83
81
79
78
78
79
81
84
88
93
99
105
112
119
127
134
141
149
155
164
169
175
180
184
188
189
192
192
190
188
186
182
177
172
166
159
153
144
138
130
123
116
109
103
96
91
87
83
81
79
79
79
80
83
86
91
96
102
108
115
123
129
136
145
151
159
165
172
176
182
185
188
190
192
191
190
187
185
180
175
170
163
156
149
142
134
127
121
113
106
99
94
89
84
83
79
78
79
79
81
84
88
93
97
104
111
118
125
132
140
147
155
161
168
174
178
183
187
189
190
191
191
189
187
183
178
174
168
161
154
146
139
131
125
117
111
103
97
92
87
83
80
79
78
77
79
81
85
89
93
100
106
113
120
127
134
142
150
156
163
170
175
181
184
188
190
192
192
190
188
186
182
178
172
166
159
152
144
137
129
122
115
108
101
95
90
86
82
80
78
78
78
80
82
86
91
96
102
109
115
123
130
136
145
152
160
166
172
177
182
186
189
191
192
192
190
188
185
180
176
170
164
157
150
141
134
127
120
113
106
99
94
89
84
81
79
78
77
79
80
84
87
92
97
104
110
118
125
132
140
147
155
162
169
175
180
184
188
190
192
192
192
190
189
185
180
173
168
162
155
147
139
132
125
117
110
103
97
91
87
82
79
78
76
77
78
80
83
88
93
99
106
113
120
127
134
142
150
157
164
171
176
181
185
189
190
192
192
192
189
187
183
178
173
166
160
152
145
137
129
122
116
108
102
95
90
86
82
79
77
78
78
79
82
85
90
94
101
108
115
121
129
136
144
151
159
165
172
177
182
186
189
191
192
192
190
188
185
181
176
171
165
157
150
143
134
127
120
113
106
100
93
89
84
82
79
78
77
79
80
83
87
91
97
103
110
117
125
131
138
146
154
161
168
173
179
184
187
189
192
192
192
190
188
184
180
174
169
162
155
147
140
133
125
118
111
105
98
92
88
83
80
79
78
78
79
80
84
88
93
99
105
112
118
127
133
141
148
155
163
170
175
180
184
188
190
192
192
192
189
186
183
178
174
167
161
153
146
138
131
124
117
109
103
97
91
87
83
80
79
78
79
79
83
85
90
94
101
107
114
121
128
136
142
150
158
165
170
176
181
185
188
190
190
191
189
188
184
180
176
170
164
157
150
143
135
128
120
114
107
101
94
89
85
82
79
78
78
79
80
83
87
91
98
103
110
117
124
130
138
146
153
161
167
173
179
182
187
189
190
191
190
189
187
183
179
174
169
161
155
147
140
133
125
118
111
104
97
92
88
84
81
79
78
78
79
81
84
88
93
99
105
113
119
127
133
142
148
157
163
170
175
180
185
187
190
191
192
190
189
186
183
177
172
166
159
152
145
137
129
123
116
108
102
96
91
86
82
80
78
78
79
80
82
86
90
96
102
108
115
123
129
137
144
152
159
166
172
178
182
186
189
190
192
192
190
188
184
181
175
170
164
157
149
141
134
127
120
112
105
99
93
88
84
80
79
77
77
79
80
83
87
92
98
104
111
118
126
132
140
148
155
162
169
174
180
184
188
190
192
192
192
190
187
185
179
175
168
162
154
146
139
132
124
117
110
103
97
91
86
82
79
78
77
78
78
81
84
88
94
99
106
112
120
127
134
141
150
156
165
170
176
181
186
188
191
192
192
192
189
187
183
178
172
166
160
152
145
137
129
122
115
108
101
95
90
85
81
79
78
78
77
81
81
86
89
95
101
108
115
122
129
136
144
152
158
166
172
178
183
185
190
191
192
192
190
188
185
182
176
171
164
157
150
142
135
127
120
113
106
99
93
90
85
81
79
78
78
78
80
83
86
91
97
103
110
116
124
130
139
146
154
160
168
173
179
183
188
189
190
192
192
190
187
185
180
175
169
163
155
148
141
132
126
118
112
104
98
93
88
84
80
79
78
78
79
81
83
88
92
99
104
111
118
126
132
140
148
155
162
169
174
180
183
187
189
192
192
190
189
186
183
179
173
168
160
153
146
138
131
124
117
110
103
97
92
87
83
80
79
78
79
79
82
85
90
95
100
107
114
121
127
135
143
150
157
164
170
176
181
185
187
189
191
190
189
188
184
181
175
171
164
157
150
142
135
127
121
114
107
100
94
90
85
82
79
79
78
79
80
83
87
92
97
104
109
117
124
131
139
145
154
160
167
173
178
183
186
188
191
190
191
189
187
184
179
174
168
162
155
146
140
132
126
118
111
104
98
92
87
83
81
79
78
78
79
81
84
89
93
99
105
112
120
127
134
141
149
156
163
170
175
180
184
187
190
192
192
190
189
186
182
177
172
166
160
152
145
137
130
123
115
108
102
96
90
86
83
79
78
77
78
79
82
86
90
95
102
108
115
122
129
137
144
152
158
166
172
178
182
186
189
191
192
192
190
188
184
182
176
170
164
157
149
142
134
127
120
113
105
99
93
88
84
80
79
77
77
78
80
82
87
91
97
103
110
117
125
131
139
147
154
162
168
174
180
184
188
190
192
192
192
190
188
185
180
175
169
162
155
148
139
133
125
118
110
103
97
91
87
82
80
78
76
76
77
80
83
87
92
98
104
111
119
126
133
141
148
156
163
170
175
181
185
188
191
192
192
191
190
187
183
178
173
167
160
153
146
138
130
123
116
109
102
96
90
86
82
79
79
77
78
79
81
85
89
94
100
107
114
121
127
136
143
151
157
165
171
176
182
185
189
190
192
192
190
189
185
183
176
171
164
158
150
144
134
128
121
114
106
100
94
88
85
81
80
77
78
78
80
83
87
91
97
102
109
116
124
131
138
145
153
161
167
172
178
182
187
189
192
192
191
190
187
185
179
175
169
162
155
147
140
133
125
118
111
105
98
92
88
84
81
79
78
79
79
82
84
89
93
99
105
112
119
127
133
141
148
156
163
169
175
179
184
187
189
190
190
190
188
186
182
177
172
166
160
152
145
137
130
123
116
109
102
96
91
86
83
80
79
78
79
81
83
86
91
96
102
108
115
122
129
137
145
152
159
166
171
177
182
186
188
190
191
191
189
188
184
180
175
170
164
157
149
142
134
127
120
113
106
99
93
89
85
82
80
78
78
79
81
83
87
92
97
103
110
117
125
131
139
146
154
161
168
173
179
183
187
189
192
192
191
190
187
184
179
174
169
162
155
147
140
132
125
118
111
104
97
92
88
83
80
79
77
78
78
81
84
89
93
99
105
112
120
126
134
141
149
156
163
170
175
180
185
188
190
191
192
191
189
186
183
178
173
166
161
152
146
137
130
123
116
108
102
96
90
86
83
79
78
77
78
79
81
85
89
95
101
107
114
121
128
136
143
151
158
165
171
177
181
186
188
191
192
192
190
189
186
182
176
172
165
158
151
143
135
128
121
114
107
100
94
89
85
81
79
77
77
78
80
82
86
90
97
102
109
115
124
130
138
145
152
160
166
172
178
183
186
188
191
192
191
190
187
184
180
175
169
163
156
148
141
133
127
120
112
106
99
93
88
85
81
79
78
78
79
82
83
88
92
98
104
111
119
125
132
140
148
155
161
169
174
179
183
187
189
190
191
190
188
186
182
178
173
166
160
152
146
138
131
124
117
110
103
97
91
87
83
80
79
78
79
79
82
85
90
95
101
107
115
121
128
136
143
150
157
165
170
177
181
185
188
190
191
191
190
188
185
181
176
171
164
158
150
143
135
128
121
114
106
101
94
90
85
82
80
78
78
79
81
83
87
91
97
102
110
116
124
130
139
145
153
161
167
173
179
183
186
188
192
190
191
189
188
184
179
175
169
162
155
148
140
132
125
119
111
105
98
92
88
83
81
79
78
78
79
81
85
89
92
99
105
112
119
127
133
141
149
156
163
170
175
180
184
188
190
191
192
191
189
186
183
178
173
166
160
153
145
137
131
123
115
108
101
96
91
86
82
79
78
76
77
79
81
84
89
94
100
107
114
121
128
135
143
151
158
166
171
178
182
186
189
192
192
192
191
189
186
182
177
172
165
158
151
144
136
128
121
114
107
100
94
89
85
81
79
77
77
77
79
82
86
90
96
102
109
116
123
130
138
145
152
160
166
173
178
183
187
189
192
192
192
191
187
185
180
176
169
164
156
149
141
133
126
119
112
105
98
93
88
84
81
79
78
78
79
81
83
88
92
98
105
111
119
126
133
140
148
155
162
169
175
179
184
187
190
190
192
191
189
187
183
178
173
167
161
154
145
138
131
124
116
110
103
97
90
87
84
80
79
77
78
79
82
86
89
94
100
107
114
121
127
135
144
150
157
165
171
176
181
185
188
190
192
190
190
188
185
182
176
171
164
157
151
143
135
127
121
114
107
100
94
90
85
82
80
78
78
79
80
84
86
92
97
103
110
117
124
132
138
146
153
161
167
174
179
183
187
189
192
192
192
190
187
184
180
175
168
162
155
146
140
132
126
118
111
103
98
92
87
83
81
78
77
78
79
81
84
88
93
99
105
112
120
126
134
141
149
156
164
170
176
181
185
189
191
192
192
192
189
187
183
179
173
167
160
153
145
137
130
123
116
109
102
96
90
86
82
79
78
77
78
79
81
85
89
94
100
107
114
121
128
135
144
151
158
166
171
177
182
186
189
190
192
192
192
188
186
182
177
172
165
158
151
143
135
127
121
113
106
100
94
89
84
81
79
78
77
78
79
83
86
91
96
102
109
116
124
130
138
145
153
160
167
173
178
183
187
189
192
192
192
190
188
185
180
175
169
163
156
147
141
133
126
119
111
105
98
93
88
84
81
78
78
78
78
81
83
88
92
98
105
111
118
125
133
140
148
155
162
169
174
180
184
187
189
192
192
191
188
187
183
179
173
167
161
153
146
138
131
124
116
110
103
97
91
87
83
80
79
77
79
80
82
85
90
95
101
107
114
121
128
135
143
150
158
165
171
177
181
185
188
189
192
191
191
188
185
181
176
171
164
157
150
143
135
127
120
114
106
100
93
90
85
82
79
78
78
79
81
83
87
92
98
103
111
117
125
131
139
146
154
161
168
174
179
184
187
189
192
192
192
190
188
184
180
175
168
162
156
147
140
132
125
118
110
105
97
92
86
83
80
79
77
77
79
81
83
88
93
99
105
111
119
126
134
141
149
156
163
170
175
181
185
188
190
192
192
191
189
187
184
178
173
167
160
153
145
138
130
123
115
110
102
97
90
86
82
80
78
78
78
79
82
85
89
94
100
107
114
121
128
135
144
151
158
166
171
178
181
186
189
190
192
192
192
188
186
182
177
172
165
158
151
144
136
128
121
114
107
100
94
90
84
81
79
78
78
78
80
82
86
91
96
102
109
116
124
131
137
146
153
161
167
173
178
183
187
189
192
192
192
190
188
184
180
175
169
163
156
148
141
133
127
119
111
105
99
93
88
84
81
79
78
78
79
81
84
89
93
99
105
112
118
126
133
141
148
156
162
169
175
180
184
187
190
190
192
190
189
185
182
178
173
167
160
152
145
138
131
123
115
109
102
97
91
87
83
80
79
78
79
80
83
86
90
95
101
108
115
122
128
137
144
151
158
166
171
177
181
187
189
190
192
192
190
188
185
181
176
171
164
157
150
142
134
127
120
113
106
100
93
89
85
81
79
77
78
78
80
83
87
91
97
103
110
117
125
131
138
146
154
162
167
174
179
183
187
189
192
192
192
189
187
184
179
175
168
163
155
148
140
133
126
118
111
105
98
92
87
84
80
78
78
77
79
80
84
88
93
98
104
111
119
126
133
140
148
155
163
169
175
180
184
188
190
191
192
191
190
186
183
179
173
167
160
153
145
138
130
124
116
109
102
96
90
86
82
80
78
77
78
79
82
85
89
94
100
107
113
122
128
135
143
150
158
165
171
176
182
185
188
190
192
192
191
188
186
182
176
171
165
158
151
143
136
128
121
114
108
101
95
89
86
82
80
78
78
79
80
83
87
91
96
103
109
116
123
130
137
146
153
160
166
172
177
183
186
189
191
191
192
189
187
184
180
175
168
162
155
148
140
133
126
119
112
104
97
93
88
85
80
79
79
78
79
81
85
88
93
99
105
111
119
127
134
141
148
156
163
169
175
180
184
188
189
191
192
191
189
185
182
179
172
167
160
153
145
137
130
123
115
109
102
96
90
86
82
80
78
77
78
79
82
85
90
95
100
108
114
122
128
136
144
151
159
165
172
177
182
186
189
190
192
192
191
188
186
182
176
171
165
158
150
143
135
127
121
114
107
100
94
89
85
81
79
78
78
78
79
83
86
91
96
103
109
116
123
130
138
146
153
159
167
173
178
183
187
189
191
192
192
190
188
184
180
175
169
163
156
148
141
133
127
119
112
104
98
93
88
83
80
79
77
77
79
80
83
88
92
99
104
111
118
126
133
140
148
155
162
169
174
180
184
188
189
192
192
191
189
187
183
179
173
167
161
153
146
138
131
123
117
109
103
97
91
87
84
80
79
78
79
80
81
85
89
94
100
107
114
121
128
135
143
150
157
164
170
177
181
185
188
190
192
191
190
188
185
181
176
172
164
158
150
143
135
128
121
114
107
100
95
89
85
82
80
78
78
78
81
83
87
91
97
103
110
116
125
131
139
146
154
161
168
173
178
183
187
189
192
192
192
190
187
185
179
175
168
163
155
148
140
132
126
118
111
104
98
92
87
84
81
78
77
78
79
81
83
88
92
98
105
112
120
126
133
140
149
156
163
169
175
179
185
188
190
192
192
191
189
187
183
179
173
167
161
153
146
138
130
123
117
110
102
96
91
86
83
80
78
77
78
79
81
85
89
94
100
107
114
120
127
135
143
150
157
165
171
177
181
186
189
190
192
192
191
189
186
182
177
171
165
158
152
143
136
128
122
114
107
100
94
89
85
81
79
77
78
78
80
82
85
91
96
102
108
116
123
130
138
145
152
160
166
172
178
183
186
189
191
192
192
190
187
185
180
175
169
164
156
148
141
133
127
119
111
105
98
93
88
84
81
79
78
78
79
80
83
88
92
98
105
111
119
125
133
140
148
155
162
169
175
179
184
187
189
190
192
191
189
187
182
179
173
167
160
153
146
138
130
123
116
109
102
96
90
87
82
80
78
78
77
80
81
85
89
94
100
107
113
120
128
136
144
151
158
166
171
177
182
186
189
190
192
192
191
189
186
182
177
171
166
157
151
143
136
127
121
113
106
100
94
89
84
81
79
78
77
77
78
82
86
90
95
102
109
116
124
130
137
145
153
161
167
173
178
183
186
189
192
192
192
190
188
185
180
175
170
163
156
148
141
134
126
119
112
105
98
93
88
83
81
78
77
77
78
80
83
87
93
97
104
111
118
125
132
140
147
155
162
169
174
180
184
188
190
192
192
192
189
187
183
179
174
167
161
154
146
139
131
124
116
110
102
97
91
86
82
80
78
77
78
79
81
84
89
93
100
106
113
120
127
135
142
150
157
164
170
176
181
185
189
190
192
192
191
188
186
182
177
171
166
158
152
144
137
129
122
115
107
102
95
90
86
82
80
78
77
78
80
82
86
91
96
102
109
116
123
130
137
146
152
160
166
173
178
182
187
189
192
192
192
190
188
185
181
176
170
163
156
149
142
133
126
119
112
105
98
92
88
84
81
78
78
77
78
80
83
87
92
98
104
111
118
126
132
140
147
155
162
169
175
180
184
188
190
192
192
192
189
188
184
180
174
168
162
155
146
139
131
125
117
110
103
97
92
86
83
80
79
77
77
79
81
84
88
93
100
105
113
120
127
135
141
149
157
164
170
176
181
184
189
190
192
192
191
189
186
182
177
172
166
159
152
144
137
129
122
115
108
102
95
90
86
82
80
78
77
79
79
83
86
90
95
102
108
115
122
129
137
145
152
159
166
172
178
182
186
189
192
192
191
190
187
185
180
176
170
163
157
149
142
133
126
120
113
106
100
92
89
83
81
79
79
78
79
81
83
88
92
98
103
110
118
125
132
139
147
155
162
169
174
179
183
187
189
191
192
191
188
187
183
179
173
168
161
154
146
139
131
125
117
110
103
97
92
87
84
80
79
78
78
79
81
85
89
94
100
106
113
121
127
135
142
150
157
164
171
176
181
184
189
190
192
192
190
188
185
182
177
172
166
159
152
144
136
128
122
115
108
101
95
90
86
82
79
78
78
78
79
83
85
90
95
102
108
115
122
129
136
144
151
159
166
171
177
181
186
188
190
191
190
190
187
185
181
175
170
162
157
149
143
133
127
120
113
106
100
93
90
85
83
79
79
79
79
81
83
88
92
98
104
110
118
125
132
139
146
154
161
167
173
179
183
187
188
190
190
190
188
187
182
178
173
167
161
153
146
139
131
125
117
110
103
97
92
87
83
81
79
78
78
80
82
85
90
94
101
106
114
120
127
135
143
150
157
164
170
176
181
184
188
190
190
192
190
188
185
182
177
171
165
158
152
144
136
129
122
115
107
101
95
90
86
82
79
79
78
79
80
83
87
91
97
102
109
115
124
130
137
145
152
160
166
172
178
182
186
189
190
192
190
190
187
185
180
174
170
163
156
148
141
133
126
119
111
105
99
93
88
84
81
79
77
78
78
81
83
88
93
98
105
111
118
126
132
140
147
156
162
169
174
179
184
188
190
191
192
192
189
187
183
178
174
167
161
154
146
139
131
124
117
110
103
97
91
87
83
80
78
78
78
79
82
85
89
94
100
107
113
121
127
136
142
150
157
165
171
176
181
185
188
190
191
192
191
188
185
182
177
171
165
158
151
143
135
128
121
114
107
100
94
89
85
82
80
78
77
78
80
82
87
90
97
102
109
116
124
131
138
146
153
160
167
173
179
184
187
189
192
192
192
190
188
185
181
175
170
163
156
149
140
134
125
119
111
105
98
92
87
84
80
79
77
77
78
79
83
87
92
97
104
111
117
126
132
140
148
155
163
169
175
180
184
188
190
192
192
192
190
187
184
179
174
168
161
154
146
139
131
124
117
110
103
97
91
86
82
80
78
77
78
79
81
84
89
94
100
106
113
121
127
135
142
150
157
164
171
176
181
186
188
191
192
192
192
188
187
183
177
172
165
158
152
144
136
129
122
115
108
101
95
89
86
82
79
77
78
78
79
82
86
90
95
101
107
115
123
129
137
144
152
158
166
172
178
182
186
189
190
192
192
190
189
185
181
176
170
164
156
149
141
134
127
120
113
106
99
94
89
84
81
79
78
77
79
80
84
87
92
98
104
111
117
125
132
139
147
154
161
168
173
179
184
187
189
190
192
192
189
186
184
179
174
168
161
155
147
139
132
125
118
110
104
98
91
87
83
81
78
78
78
79
81
85
88
94
99
106
112
120
127
134
142
149
157
164
170
175
180
184
188
189
192
192
190
188
186
182
177
172
166
159
152
144
138
129
123
115
109
102
96
90
86
83
80
79
78
79
80
83
86
91
96
102
108
115
122
129
136
144
152
159
165
172
176
182
185
188
190
190
190
189
187
184
179
175
169
163
156
148
142
134
127
120
113
106
99
94
89
84
82
79
79
78
79
81
84
88
92
98
104
111
118
125
132
139
147
154
161
168
173
179
183
187
189
191
192
190
188
186
182
179
173
167
161
154
146
138
131
124
117
110
103
98
91
87
83
81
79
78
78
79
81
85
89
94
100
106
114
120
127
134
143
150
157
164
171
176
181
185
188
190
192
190
191
188
185
181
176
172
165
158
152
144
136
128
122
115
108
101
95
90
85
82
79
78
78
78
80
83
86
91
96
102
108
115
123
130
137
145
152
160
166
173
177
183
186
189
191
192
192
190
188
185
181
176
170
163
157
149
142
133
127
119
112
105
99
93
88
84
81
79
78
78
79
80
83
87
92
98
104
111
118
125
133
139
148
155
162
168
174
180
183
188
189
192
192
192
189
187
184
179
174
168
161
154
146
139
131
124
117
110
103
97
90
87
82
80
78
77
77
79
81
84
88
94
100
106
113
120
127
135
143
150
157
165
171
176
181
185
189
191
192
192
192
189
187
183
178
172
166
159
152
144
136
129
122
115
107
101
94
89
85
81
79
78
77
78
79
82
85
90
95
101
108
115
122
129
137
144
152
160
166
172
178
182
187
189
192
192
192
190
188
186
182
176
170
164
157
150
142
134
127
120
112
106
99
93
89
83
82
78
77
77
78
80
83
87
92
97
103
110
117
126
131
140
147
155
161
168
174
179
184
187
190
192
192
192
189
188
184
179
174
168
162
155
147
140
132
125
117
111
104
97
92
87
83
80
79
78
78
79
81
84
89
93
99
105
112
119
127
134
141
149
156
164
170
175
181
184
189
189
192
192
191
188
186
183
178
172
167
160
152
145
137
130
122
115
108
102
96
90
86
82
79
79
78
79
79
83
85
91
96
102
107
115
123
130
136
144
151
159
165
172
178
182
186
189
189
192
191
191
187
186
180
175
171
164
157
149
143
135
127
120
113
106
100
93
90
84
82
79
78
79
79
81
84
88
92
97
104
110
118
125
132
140
146
154
161
168
173
178
183
187
189
191
190
191
189
186
183
178
173
167
161
154
146
139
131
125
117
110
103
97
92
87
83
81
79
78
79
80
82
85
90
94
101
107
114
121
127
135
143
150
157
164
171
176
182
185
188
190
192
192
190
188
186
182
177
171
165
158
151
144
136
129
121
114
108
100
95
89
85
82
79
78
78
78
80
82
86
90
96
102
108
116
122
130
137
145
152
159
166
172
178
182
186
189
191
192
192
190
188
185
181
175
170
164
156
149
142
134
127
119
113
105
99
93
89
84
81
79
78
78
79
80
83
87
92
97
104
110
117
125
132
139
147
154
162
169
174
180
183
187
189
192
192
192
189
187
184
180
174
168
161
155
146
139
132
124
117
111
103
97
91
87
82
80
78
77
77
79
80
83
88
93
98
105
111
120
127
134
142
149
157
163
170
175
181
185
189
190
192
192
192
189
187
183
178
173
167
160
152
145
137
130
123
115
109
101
96
90
86
82
79
78
78
78
79
82
85
90
94
101
107
115
122
129
137
144
151
158
165
172
177
182
186
189
190
192
192
190
188
186
181
176
170
164
157
150
143
134
127
120
114
106
100
94
90
84
82
79
79
78
79
80
83
87
92
98
103
110
117
125
132
138
146
154
161
167
173
179
183
186
189
190
191
191
188
186
183
179
174
168
161
154
147
140
132
125
118
111
104
98
92
88
84
81
79
79
79
81
82
85
90
94
100
107
114
120
127
134
142
150
157
163
170
175
180
184
188
189
190
191
189
188
185
181
177
171
165
158
151
144
136
129
122
115
108
101
95
90
86
83
80
79
78
79
80
83
86
91
97
102
109
116
123
130
137
145
152
159
166
172
178
182
186
189
190
192
192
190
188
184
181
175
170
163
157
149
142
133
127
120
112
106
99
93
89
84
81
79
78
78
79
81
84
87
92
97
104
111
117
126
131
140
147
155
162
169
174
179
184
187
189
192
192
192
189
187
184
179
174
168
162
155
146
139
131
125
118
110
103
96
92
86
83
80
78
77
78
79
82
83
89
93
99
105
113
120
127
134
142
149
156
163
170
175
180
185
188
191
192
192
192
189
186
183
178
173
166
160
151
145
136
130
122
115
108
102
95
90
85
82
79
78
77
78
80
82
86
89
96
101
108
115
122
129
136
144
152
159
166
171
177
182
186
189
190
191
192
190
188
185
181
176
170
164
157
150
142
134
127
120
113
106
100
94
89
85
82
80
78
78
79
81
83
87
92
98
103
111
117
125
131
139
146
154
161
167
173
178
182
186
188
190
192
190
189
186
183
178
173
168
161
154
146
139
132
124
118
111
104
98
93
88
84
81
79
78
79
80
82
85
90
94
100
106
113
120
127
134
142
150
156
163
170
175
180
185
187
189
190
192
190
188
185
182
176
172
165
158
151
144
136
129
122
115
108
101
96
90
86
82
80
78
78
78
80
82
86
90
96
102
108
115
123
129
137
144
152
159
166
172
177
182
186
189
190
192
192
189
187
185
180
176
169
164
156
150
141
134
127
119
112
106
99
93
88
84
81
79
78
78
79
81
83
88
92
98
103
111
117
125
132
139
148
154
161
168
174
179
184
187
190
191
192
191
190
187
183
179
173
169
161
155
147
139
132
124
117
110
103
97
91
87
83
80
78
77
78
79
81
84
88
93
99
106
112
120
127
134
142
148
156
164
170
176
180
185
188
190
192
192
192
189
186
183
178
173
166
160
152
145
137
129
123
115
108
101
95
90
86
82
80
78
78
77
79
81
85
90
95
101
107
114
122
128
136
144
152
158
166
172
178
182
186
189
190
192
191
190
188
186
180
176
170
164
157
150
143
134
127
120
113
106
100
94
89
85
81
79
78
78
79
80
83
88
91
97
103
110
117
124
132
138
147
153
161
167
174
178
183
187
189
190
192
191
189
186
183
179
173
168
161
154
147
138
132
124
117
110
103
98
91
87
83
81
78
78
78
79
81
84
89
94
99
106
113
120
127
134
142
149
157
164
170
176
181
185
188
190
192
192
191
189
186
182
177
172
166
158
152
144
137
128
122
114
107
101
94
89
85
81
79
77
77
77
79
82
86
90
95
102
108
115
122
129
137
144
152
160
166
173
177
183
186
189
191
192
192
190
188
185
181
176
170
164
157
149
141
133
127
120
112
106
99
93
88
84
81
78
77
77
78
80
83
87
91
97
103
109
117
124
132
138
147
154
162
168
174
180
183
187
190
190
192
192
190
188
184
180
174
169
162
155
147
140
132
125
118
111
104
98
91
88
83
80
78
77
77
78
81
84
88
92
99
105
112
119
127
133
142
149
156
163
170
175
180
184
189
189
192
192
192
189
187
183
178
173
166
160
153
145
137
130
123
116
108
103
95
91
85
82
80
78
77
78
79
82
85
90
94
100
107
115
122
129
136
144
151
159
165
171
176
181
186
188
192
191
192
190
189
185
181
176
170
164
157
150
143
135
127
120
113
107
100
94
89
85
82
79
78
78
78
80
83
87
91
97
103
110
117
124
131
139
146
154
160
168
174
179
183
187
190
191
192
192
190
187
184
180
174
168
162
155
148
140
132
125
118
111
103
98
91
87
83
80
78
76
77
78
80
83
88
92
98
105
111
119
127
133
141
149
156
164
170
176
181
185
188
191
192
192
192
190
187
184
178
173
167
161
153
146
138
130
123
116
108
102
96
90
86
81
80
77
77
77
79
81
85
89
94
100
106
113
121
127
136
143
150
158
165
171
176
181
185
188
190
192
192
191
188
186
181
176
171
165
157
150
143
135
127
121
113
106
100
94
89
84
82
79
78
78
78
80
82
86
91
97
103
109
116
124
130
138
146
153
161
166
173
178
183
186
189
190
191
191
189
187
184
179
174
168
162
155
147
140
132
126
118
111
104
98
92
88
84
81
79
78
78
80
81
84
88
93
99
105
112
119
126
133
140
148
155
163
169
174
180
184
187
189
190
192
190
188
186
182
178
172
166
159
152
144
137
130
123
115
109
101
97
90
86
82
80
79
77
78
80
82
85
90
95
101
107
114
121
129
136
143
151
158
166
171
177
182
185
188
189
192
190
190
188
185
181
176
170
164
157
149
142
135
127
120
114
106
100
94
89
84
81
79
78
78
78
80
83
86
92
97
103
110
117
124
131
139
146
153
161
167
174
179
183
187
189
192
191
192
189
187
184
179
174
168
162
155
147
140
132
126
118
111
104
98
92
88
83
81
78
79
78
79
81
84
88
93
99
106
112
119
127
133
142
148
156
162
169
175
180
184
187
189
192
191
190
188
186
181
176
172
166
159
151
144
137
129
122
115
108
102
96
91
85
83
79
79
77
79
80
82
86
91
97
102
108
116
123
129
137
145
152
159
166
172
177
182
186
189
190
191
192
189
188
184
180
175
170
163
156
148
141
134
127
120
112
105
98
93
88
84
81
79
77
77
79
80
83
87
91
98
103
111
117
125
132
139
147
154
161
168
174
180
184
188
189
192
192
192
190
187
184
179
174
168
162
154
147
139
132
124
117
110
103
97
91
87
83
80
78
77
78
78
81
84
89
93
99
105
112
120
127
134
141
149
156
164
170
176
180
185
188
190
192
192
191
189
186
183
178
173
166
161
152
146
137
130
123
116
108
102
96
90
86
82
80
77
77
77
80
82
85
89
94
101
107
114
122
127
135
143
152
158
165
171
177
182
186
188
190
192
192
189
188
185
181
176
171
165
157
150
142
135
127
120
113
107
100
94
89
85
81
79
78
78
78
80
82
87
91
97
102
110
117
124
130
138
146
153
161
167
173
178
183
186
189
190
192
191
190
186
184
180
174
169
162
155
148
140
133
126
118
111
104
98
92
88
83
81
79
77
78
79
81
83
88
93
98
105
111
119
126
133
140
148
155
162
169
175
180
184
187
189
191
192
191
189
186
183
178
173
167
161
152
146
138
130
124
117
109
102
97
91
86
83
81
78
78
78
80
82
86
89
94
101
106
114
121
127
136
142
150
157
165
170
176
180
185
187
190
191
192
189
188
184
181
176
170
165
157
151
143
136
128
122
114
108
101
95
90
86
82
80
79
79
79
81
84
88
91
97
102
110
117
124
130
138
146
153
160
166
173
178
182
186
189
190
191
190
189
186
183
179
174
168
161
155
147
140
133
125
119
111
105
98
93
88
84
81
79
78
78
79
82
84
88
93
99
106
111
119
127
134
141
148
156
163
169
175
180
185
187
190
191
192
190
188
186
182
178
172
166
159
152
145
138
130
123
115
109
103
96
91
86
82
80
78
78
78
80
82
85
90
95
101
107
115
122
128
137
144
152
158
165
171
177
182
186
188
191
192
192
190
188
185
181
176
171
165
157
150
143
135
127
121
113
106
99
94
89
85
81
79
78
78
78
80
83
87
91
97
103
109
117
124
131
137
146
153
162
166
173
178
184
187
189
192
192
191
190
188
184
180
175
169
162
155
148
140
133
126
119
111
105
98
92
88
84
81
78
77
78
79
81
84
88
93
98
105
111
119
126
133
141
149
155
163
169
176
179
185
188
190
192
192
191
189
187
183
178
173
167
160
153
145
138
130
124
116
109
102
96
91
87
83
80
78
78
78
80
81
86
89
95
101
107
114
122
128
136
143
151
158
165
171
176
182
186
189
190
192
192
190
188
185
182
177
171
165
158
151
143
135
128
121
113
108
100
96
89
86
82
80
78
78
79
80
83
87
91
97
103
109
116
124
131
138
145
153
160
167
172
178
182
186
189
190
191
190
189
187
184
179
175
168
162
155
148
140
133
126
119
112
105
99
93
88
85
81
80
79
79
80
82
85
89
94
100
107
112
120
126
134
141
149
155
163
170
175
180
184
187
189
191
191
189
189
185
182
177
172
165
158
152
144
137
129
123
115
109
102
97
91
87
82
81
79
79
79
80
83
85
91
96
102
108
115
122
130
137
144
151
158
166
172
177
182
185
188
190
192
192
190
187
185
181
176
170
164
157
150
142
135
127
120
112
106
99
93
89
85
82
79
78
79
79
80
83
88
91
98
104
110
117
124
131
139
147
154
161
167
174
178
184
186
189
191
192
192
190
187
184
180
175
168
163
155
147
140
132
125
118
111
104
98
92
87
84
80
79
78
77
79
80
84
88
93
99
105
111
119
127
133
140
148
156
163
170
176
180
185
188
190
192
192
191
189
186
184
178
173
167
161
153
145
138
130
123
116
109
102
96
91
86
82
80
78
78
78
79
81
85
90
94
100
107
114
122
127
136
143
151
158
165
171
177
181
186
188
190
192
192
190
188
186
181
177
171
165
158
150
143
135
127
121
113
107
100
94
89
84
81
79
78
78
78
80
82
87
90
97
103
109
116
124
131
138
146
153
161
167
173
178
184
186
189
190
192
192
189
187
184
180
175
169
163
155
148
140
133
126
119
111
105
98
93
87
84
81
79
77
78
79
81
84
88
93
99
105
112
119
127
133
141
148
155
163
169
175
179
184
188
190
190
192
190
189
186
183
178
172
166
161
152
145
137
130
123
116
108
102
95
91
86
82
80
78
77
78
79
82
85
90
95
101
107
114
122
128
137
144
152
158
166
172
178
182
186
189
192
192
192
190
189
186
182
177
171
165
158
151
144
135
128
120
114
106
99
94
88
85
80
79
77
77
77
79
82
86
90
96
102
109
116
123
130
138
146
153
161
167
173
179
183
188
189
192
192
192
190
188
186
181
176
169
163
156
149
141
134
126
119
111
105
98
93
88
83
80
79
77
78
78
81
83
87
92
98
104
111
119
126
133
140
147
156
162
168
175
180
184
187
190
192
192
191
189
187
183
179
173
167
161
153
146
139
131
124
117
110
103
97
91
87
83
80
78
78
77
79
80
85
89
94
100
107
113
121
127
135
143
150
157
164
171
176
181
185
188
190
191
192
190
188
185
181
177
171
165
158
151
143
136
128
122
114
107
100
95
89
85
82
79
79
78
78
80
83
86
91
97
102
109
115
123
131
138
146
152
160
167
173
178
183
186
189
190
192
191
189
187
184
180
174
170
162
156
148
141
133
126
118
111
105
99
92
88
84
81
79
78
78
79
81
84
88
93
98
105
111
118
126
133
141
148
155
162
169
175
180
184
188
189
192
191
192
189
186
182
178
173
166
161
153
146
137
130
124
116
109
102
96
91
86
83
80
78
78
78
79
82
85
90
94
101
107
114
121
127
136
142
152
158
165
171
176
182
186
188
190
191
192
190
189
186
181
176
170
165
158
151
143
135
129
121
115
107
101
95
89
85
82
80
78
78
79
80
83
87
91
97
102
109
116
123
131
137
146
152
160
166
172
178
182
186
189
191
190
191
189
186
183
179
174
169
161
155
147
140
132
125
119
111
105
98
93
89
84
82
79
79
79
80
82
84
89
93
99
105
112
119
127
133
141
148
156
162
169
175
180
184
188
189
192
192
190
188
186
182
177
172
166
159
152
144
137
129
123
116
109
102
96
91
86
83
79
79
77
79
79
82
85
90
94
101
107
114
121
128
136
144
151
158
165
172
177
182
186
189
191
192
192
190
189
185
182
176
171
164
158
150
143
134
128
120
114
106
100
94
89
84
81
79
77
77
78
80
83
87
90
97
102
109
116
124
130
138
145
153
160
167
172
179
183
187
189
192
192
192
190
188
185
180
175
169
163
156
149
141
133
126
119
111
105
98
92
88
84
80
79
77
78
78
80
83
88
92
98
104
111
118
125
132
140
148
155
162
169
175
179
184
187
190
192
192
192
189
187
184
179
173
167
161
153
145
138
131
124
116
109
103
96
91
86
82
80
78
78
77
80
81
85
89
94
100
106
113
121
127
135
142
150
157
164
171
176
181
185
188
190
192
192
191
188
185
181
176
171
165
157
150
143
135
128
121
114
107
100
95
89
85
82
79
78
77
79
79
83
86
90
96
102
109
116
123
130
137
145
152
160
167
172
178
182
186
189
190
192
191
189
187
184
180
174
169
162
156
148
141
133
126
118
111
105
98
92
87
84
81
79
77
78
79
81
84
87
93
98
105
111
118
126
132
140
148
155
162
169
175
179
184
187
189
191
191
190
189
186
182
178
173
167
160
153
146
138
131
123
116
109
102
96
91
86
82
80
78
78
78
79
82
85
90
94
100
107
114
121
127
135
143
151
157
164
171
176
181
185
188
190
191
191
190
188
185
180
176
170
165
157
150
142
135
127
120
113
107
99
93
88
84
81
79
78
77
78
79
82
87
90
97
102
109
116
124
130
138
146
153
161
168
173
179
184
187
190
192
192
192
190
188
185
181
174
169
163
156
148
140
133
125
118
111
104
98
91
87
83
80
78
77
76
78
80
83
86
92
97
104
111
118
125
132
140
148
156
162
169
175
180
184
188
190
192
192
192
190
187
184
178
173
167
161
153
146
139
130
124
116
110
102
96
90
86
82
80
78
77
77
78
81
84
89
93
100
106
113
121
127
135
142
150
157
164
171
177
181
185
188
190
192
192
192
188
187
182
178
171
165
159
151
144
136
128
121
115
108
101
94
90
85
82
79
78
77
78
80
82
86
91
97
102
108
116
123
130
137
145
152
160
166
173
178
183
186
189
192
191
192
190
188
184
179
175
169
164
155
149
141
133
127
119
112
105
99
93
88
84
81
79
79
78
79
81
84
88
93
99
104
111
118
126
133
140
148
155
162
169
174
180
184
187
188
192
191
192
189
187
182
179
173
167
160
153
145
139
131
123
117
110
103
97
91
87
83
80
79
78
79
79
82
84
89
94
100
107
113
121
127
136
143
150
158
164
171
176
181
185
188
190
192
191
191
188
186
182
176
172
165
159
151
144
136
129
122
114
108
101
95
90
85
82
79
78
78
78
80
82
86
91
96
102
108
116
123
130
137
145
153
159
167
172
178
183
186
189
192
192
192
190
188
185
180
175
169
164
156
149
141
134
127
119
112
105
99
93
88
84
81
79
78
78
79
81
83
88
92
98
104
111
118
126
132
140
148
155
162
169
174
180
184
188
189
192
192
191
189
187
184
178
173
168
161
154
147
138
131
123
118
110
104
97
92
87
83
81
79
78
78
79
82
85
89
94
100
107
113
121
127
135
143
150
157
165
170
176
181
185
188
190
191
191
190
188
185
181
176
171
164
158
151
143
136
128
122
114
107
101
95
90
85
83
80
78
78
79
81
83
87
92
97
103
110
116
125
131
138
146
153
161
167
174
178
184
186
189
191
192
191
189
187
184
179
175
168
162
155
148
141
132
125
118
111
105
98
92
88
83
80
79
78
77
79
80
84
88
93
98
105
111
119
126
134
140
148
155
163
170
175
181
185
188
190
192
192
192
189
187
184
179
173
167
161
153
146
139
131
124
116
109
102
97
90
87
82
80
78
77
78
79
81
84
89
94
100
106
113
121
127
135
143
150
158
165
171
177
181
185
189
190
192
192
192
188
187
182
177
172
166
158
152
144
136
128
122
114
107
101
94
90
85
82
80
78
78
78
80
83
86
91
96
103
108
116
123
130
137
145
152
160
166
173
177
183
186
189
192
192
192
190
188
185
180
176
170
164
156
149
142
134
127
119
112
105
99
93
88
84
81
79
78
77
79
80
83
87
92
98
104
111
118
125
132
140
147
155
162
169
174
179
183
188
189
191
192
191
189
186
183
179
172
168
160
154
146
139
131
125
117
110
103
97
91
87
83
80
79
77
79
80
82
85
89
94
100
106
113
120
127
135
142
150
157
164
171
177
180
186
189
190
192
190
192
189
186
182
176
172
165
159
152
144
136
128
121
115
107
102
96
90
85
82
80
78
78
78
80
83
86
91
95
102
108
116
122
130
137
144
152
159
166
172
178
183
186
189
191
192
192
190
188
185
180
175
168
163
156
148
141
133
127
119
112
105
99
92
88
84
81
79
78
78
79
80
84
88
92
98
104
111
118
125
132
139
147
155
162
168
174
180
184
188
189
190
192
191
189
187
183
179
172
168
160
154
146
138
131
124
117
110
103
97
91
86
83
80
79
77
78
79
81
85
89
94
100
106
113
120
127
134
143
150
157
164
170
176
181
185
188
190
192
192
190
189
185
182
176
172
165
158
152
144
137
129
122
115
108
102
95
90
85
82
80
79
78
79
80
82
86
91
95
102
108
116
123
129
137
144
152
159
166
172
176
181
185
188
190
190
191
189
187
184
180
175
169
163
157
148
142
133
127
120
113
106
100
94
89
85
82
80
79
79
80
82
84
88
93
99
105
111
119
126
132
140
148
155
161
168
173
179
183
187
189
190
190
190
188
186
182
178
172
167
160
153
146
138
131
124
116
110
103
98
91
88
83
80
79
78
79
79
83
85
89
94
100
107
114
120
128
135
143
150
158
164
170
176
181
185
188
190
192
192
190
188
186
182
177
172
166
158
151
143
137
128
122
114
108
101
95
89
85
82
79
78
78
79
80
83
86
91
95
102
108
116
123
130
137
145
153
159
166
173
178
183
186
190
190
192
192
190
188
185
181
176
170
164
156
149
142
133
127
119
113
105
99
93
88
84
81
79
78
77
79
80
83
87
92
98
104
111
118
125
132
139
147
155
162
169
174
180
184
188
189
192
192
192
190
187
184
179
174
168
161
154
146
139
132
124
117
110
103
97
91
86
83
80
78
77
79
78
81
84
89
94
100
106
113
120
127
134
142
150
157
164
170
176
181
185
188
190
192
192
192
189
186
182
177
172
165
159
151
144
136
129
122
115
108
101
94
90
85
82
79
78
78
78
80
82
86
90
96
102
109
115
123
130
137
144
152
159
166
172
178
183
186
188
191
192
192
189
188
184
181
176
170
164
157
149
141
134
127
120
112
106
99
93
88
84
81
79
78
78
79
81
83
88
92
98
104
111
118
125
132
139
148
154
162
168
174
179
184
187
190
190
192
190
189
187
183
179
173
168
161
154
146
139
131
124
117
110
103
97
91
87
83
80
79
78
78
79
81
84
88
94
99
107
112
120
127
134
142
149
157
164
169
176
181
185
188
190
192
192
192
189
186
182
177
173
165
159
151
144
137
129
122
114
107
101
95
90
86
81
80
78
78
78
80
82
86
90
96
102
108
116
122
129
137
145
152
159
166
172
177
182
186
189
190
192
192
190
188
185
181
176
170
164
156
149
141
133
127
119
112
105
99
93
89
84
81
79
78
78
79
81
84
88
92
98
104
111
118
125
133
139
147
154
162
167
174
179
183
186
188
190
191
190
189
186
182
178
172
168
160
154
146
138
131
124
117
109
103
97
91
87
83
81
79
78
79
80
82
85
90
95
100
107
114
121
128
135
143
150
158
164
171
176
181
185
188
190
192
192
190
188
185
182
176
171
164
158
150
143
135
128
121
114
107
100
94
89
85
82
79
78
77
78
79
82
86
90
96
102
109
115
123
129
138
145
153
159
167
172
178
183
186
189
191
192
192
190
188
184
181
175
169
164
156
148
141
134
127
119
112
105
98
93
88
84
80
79
77
78
79
80
83
87
92
98
103
110
118
125
132
140
147
154
162
168
174
179
184
187
189
191
192
192
190
187
184
179
174
168
161
154
147
139
132
124
117
110
104
97
91
87
83
80
78
78
77
79
81
84
89
93
99
106
112
120
127
134
141
149
156
163
170
175
181
185
188
190
192
192
190
189
186
182
178
172
166
159
152
144
137
129
123
115
108
101
95
90
86
82
79
78
78
78
80
82
86
90
96
101
108
115
123
129
136
144
152
159
166
172
177
182
185
189
190
192
191
190
187
185
181
175
170
164
156
149
142
134
126
120
112
106
99
93
89
84
81
79
78
77
79
80
84
87
92
97
104
110
118
125
131
140
147
154
162
168
174
179
184
187
190
191
192
192
189
187
184
179
174
168
162
154
147
140
131
125
117
111
103
97
92
87
83
80
78
78
77
79
81
84
89
93
99
106
113
120
127
134
142
150
157
163
171
175
181
184
188
190
192
192
191
189
186
182
178
172
165
159
151
145
136
129
122
115
108
101
96
89
86
82
80
78
78
79
80
82
86
90
95
102
107
115
122
130
137
144
152
159
166
171
178
182
186
189
190
192
192
190
188
184
181
175
170
163
156
149
141
134
127
120
112
105
99
93
89
84
81
79
78
78
79
80
83
87
92
98
104
111
117
125
131
140
147
154
161
168
174
179
184
187
189
191
192
192
189
187
183
179
174
168
161
154
146
139
131
125
118
110
103
97
92
86
84
80
79
78
78
79
81
84
89
93
99
106
113
120
127
135
142
150
157
163
170
176
181
185
188
191
192
192
191
188
186
182
177
172
165
159
152
144
136
128
122
115
109
101
95
89
86
82
80
78
77
79
79
82
86
90
96
101
108
115
122
129
137
145
152
159
167
172
178
182
186
189
190
192
192
191
188
185
181
176
170
164
157
150
142
134
127
120
113
106
100
93
89
85
82
80
78
78
79
81
83
87
92
98
104
110
117
125
131
139
147
154
161
167
174
178
183
186
189
191
191
190
189
186
183
179
174
168
162
154
148
140
132
125
118
111
105
98
93
88
84
82
79
79
79
81
82
86
89
94
100
106
113
120
127
134
141
149
156
163
170
175
180
183
187
189
190
191
189
188
185
181
177
171
166
158
152
144
137
129
122
115
109
102
96
91
87
83
80
79
78
79
80
83
87
91
96
102
108
115
123
130
137
145
152
159
166
172
178
182
186
189
190
192
190
190
187
185
180
175
170
163
157
149
142
134
127
120
113
106
99
93
89
84
81
79
78
78
79
81
84
87
92
98
104
110
118
125
132
139
147
154
161
168
174
179
184
187
189
192
192
192
189
187
183
179
174
167
161
155
146
140
131
125
117
111
103
97
92
87
83
80
78
78
78
79
81
84
89
93
100
105
113
120
127
134
142
149
157
164
171
175
181
185
188
190
192
192
191
189
186
182
178
172
166
159
152
145
136
129
123
116
108
102
